Thursday, February 26, 2009

[jQuery] Re: Problem with class attribute: Why this work in 1.2.6 and doesn't work on 1.3.1???

$(".detalhes") should work whereever the class "detalhes" is defined,
regardless of element type. But since we cannot see your HTML, could
you also post the HTML part of your page?

On Feb 26, 8:46 am, AndreMiranda <acymira...@gmail.com> wrote:
> But why (".detalhes") doesn't work and ("div .detalhes") works???
> thanks!!
>
> On 26 fev, 15:44, Eric Garside <gars...@gmail.com> wrote:
>
> > Actually, the space is telling jquery that you want sub elements, not
> > the actual elements.
>
> > a .clickMe will match:
>
> > <a><span class="clickMe"></span></a>
>
> > but not
>
> > <a class="clickMe"></a>
>
> > If you want a tag with a class, you can't add a space.
>
> > On Feb 26, 1:41 pm, brian <bally.z...@gmail.com> wrote:
>
> > > Maybe it's just a typo (and unrelated) but you have spaces in both
> > > "div .detalhes" & "a .clickMe".
>
> > > On Thu, Feb 26, 2009 at 1:27 PM, AndreMiranda <acymira...@gmail.com> wrote:
>
> > > > $(document).ready(function() {
>
> > > >        //chama a função de Tip
> > > >        reiniciaTip();
>
> > > >        //arredonda fundo cinza do DatePicker e da drop down list de
> > > > agendas
> > > >        $("#divCinza").corner();
>
> > > >        //DatePicker
> > > >        $("#divDatePicker").datepicker({
> > > >            defaultDate: new Date($("#dataDatePicker").val()),
> > > >            changeMonth: true,
> > > >            changeYear: true,
> > > >            onSelect: function(dataSelecionada){
> > > >                        $.ajax({
> > > >                                type: 'GET',
> > > >                                data: dataSelecionada,
> > > >                                url: '/Admin/Agenda/CompromissoAgenda/?
> > > > dataSelecionada=' + dataSelecionada,
> > > >                                success: function(conteudoAtualizado){
> > > >                                            //atualiza os períodos e
> > > > compromissos
> > > >                                            $("#divPeriodos").empty
> > > > ().html(conteudoAtualizado);
> > > >                                            //reinicia a função de Tip
> > > > devido ao callback do ajax
> > > >                                            reiniciaTip();
> > > >                                         }
> > > >                              });
> > > >                      }
> > > >        });
>
> > > >        //Adiciona a DDL codAgenda na divDDLAgendas da Master
> > > >        $("#divDDLAgendas").append($("#codAgenda"));
> > > >        $("#codAgenda").css({width: '170px'});
>
> > > > });
>
> > > > function reiniciaTip()
> > > > {
> > > >    $("div .detalhes").each(function(){
> > > >        var compromissoId = $(this).attr("id").split("-")[1];
> > > >        $(this).bt({
> > > >                    ajaxPath: '/Admin/Agenda/DetalhesAgendamento',
> > > >                    ajaxData: {data: "codAgendamento=" +
> > > > compromissoId},
> > > >                    ajaxOpts: { success: function (data) { return
> > > > data.toString(); }},
> > > >                    ajaxCache: false,
> > > >                    cssStyles: {fontSize: '11px' },
> > > >                    width: 220,
> > > >                    centerPointX: .9,
> > > >                    spikeLength: 35,
> > > >                    spikeGirth: 25,
> > > >                    padding: 10,
> > > >                    cornerRadius: 25,
> > > >                    strokeStyle: '#ABABAB',
> > > >                    strokeWidth: 1
> > > >                });
> > > >    });
> > > > }
>
> > > > Take a look the function reiniciaTip and the "(div .detalhes)". In
> > > > 1.2.6, I just had to write "(.detalhes)", but now i had to specify
> > > > that this is from a div
>
> > > > Thanks!!
>
> > > > On 26 fev, 15:22, Eric Garside <gars...@gmail.com> wrote:
> > > >> Can you share your code? The small snippets you've shared indicate no
> > > >> problem. I threw up the jsbin test to confirm that it's not jquery 1.3
> > > >> that's causing the error. We can't really help unless you post the
> > > >> full sample of your code that's broken, or give us a url we can check
> > > >> out and test.
>
> > > >> On Feb 26, 1:18 pm, AndreMiranda <acymira...@gmail.com> wrote:
>
> > > >> > Man, I really don't know why my code is working this way... it's
> > > >> > frustrating... I really don't wanna go back to 1.2.6...
>
> > > >> > On 26 fev, 15:08, Eric Garside <gars...@gmail.com> wrote:
>
> > > >> > > Do you have a demo page up somewhere that displays these errors? That
> > > >> > > code looks perfectly valid, and I've not noticed any errors in 1.3.1,
> > > >> > > so I'm not sure what could be causing it. I threw up a jsbin test on
> > > >> > > it, and it seems to work fine.
>
> > > >> > >http://jsbin.com/aputa/edit
>
> > > >> > > On Feb 26, 1:02 pm, AndreMiranda <acymira...@gmail.com> wrote:
>
> > > >> > > > Hi Eric!
>
> > > >> > > > I showed this problem with Flexigrid selected rows, but the problem is
> > > >> > > > with a specific class attribute to several elements.
> > > >> > > > For example, If I have 2 links with class attribute "clickMe" and I
> > > >> > > > do:
>
> > > >> > > > $(".clickMe").click(function(){ alert("this is a test"); });
>
> > > >> > > > only the FIRST link works. In 1.2.6 this used to work just fine, but
> > > >> > > > in 1.3.1 don't.
>
> > > >> > > > The same code above, to work on 1.3.1 in my projects, I have to do
>
> > > >> > > > $("a .clickMe").click(function(){ alert("this is a test"); });    I
> > > >> > > > had to specify that "clickMe" is a link ("a") class attribute...
>
> > > >> > > > Thanks!!
>
> > > >> > > > On 26 fev, 14:50, Eric Garside <gars...@gmail.com> wrote:
>
> > > >> > > > > Can you provide some HTML to go along with this? There's not enough
> > > >> > > > > info present to properly determine the issue.
>
> > > >> > > > > On Feb 26, 12:47 pm, AndreMiranda <acymira...@gmail.com> wrote:
>
> > > >> > > > > > Hi everyone!!
>
> > > >> > > > > > Well... for me it's just the same thing, but I don't know why this
> > > >> > > > > > works in 1.2.6 and doesn't in 1.3.1:
>
> > > >> > > > > > if ($('.trSelected').length == 2)
> > > >> > > > > > {
> > > >> > > > > >         alert("hello");
>
> > > >> > > > > > }
>
> > > >> > > > > > In this case, I'm selecting rows on flexigrid and used to work just
> > > >> > > > > > fine in 1.2.6.
>
> > > >> > > > > > To work in 1.3.1, I had to do this:
>
> > > >> > > > > > if ($('#flexDiv .trSelected').length == 2)
> > > >> > > > > > {
> > > >> > > > > >            alert("hello");
>
> > > >> > > > > > }
>
> > > >> > > > > > I had to specify the table from where the trSelected are... why does
> > > >> > > > > > this happens??
> > > >> > > > > > I'm having too many problems with class attibutes. For example: If I
> > > >> > > > > > have 3 input text with class "test", only the first input text is
> > > >> > > > > > functional... the other ones no.
> > > >> > > > > > Why?
> > > >> > > > > > thanks!!!
>
>

No comments: