0

私はjqueryが初めてです。「xxx」というクラスがあり、その中にクラス名が「YYY」のボタンのセットが追加され、ajax 呼び出しによって各ボタンの ID 値が変更されます。

例えば

<div class="xxx">
</div> <!-- before ajax call -->



<div class="xxx">
<input type="button" class="YYY" id="1"/>
<input type="button" class="YYY" id="2"/>
<input type="button" class="YYY" id="3"/>
</div>

ここで、ボタン「オン」クリックの id 値を取得する必要があります。だから私は使った

$(document).ready(function{

$('.xxx').on('click','.yyy',function({
   var id = $(this).attr('id');
});

});

しかし、これは機能していません。私も試してみました

$(document).ready(function{

$('.xxx').on('click','.yyy',function({
   var id = $('.yyy').attr('id');
});

});

これは、クリックごとに最初のボタンの値を返します。助けてください

4

5 に答える 5

0

に間違いがありdocument.readyます。()そこの機能とクリックイベントでブラケットを逃しました....

これを試して;

 $(document).ready(function(){
                      //---^^ ---here

 $('.xxx').on('click','.yyy',function(){
                           //--------^^---here

だからそうあるべきだ

$(document).ready(function(){
$('.xxx').on('click','.yyy',function(){
   var id = $(this).attr('id');
});
});

最初のコードが機能するはずです...

于 2013-04-10T07:04:37.640 に答える
0

スクリプトにいくつかのタイプミスがあります:

$(document).ready(function{ //<----misssing '()'

$('.xxx').on('click','.yyy',function({ //<---missing ')' after function

すでにセレクターのコンテキストにいる場合は、this.idorを使用し$(this).attr('id')ます。

$('.xxx').on('click','.yyy',function(){
   var id = $(this).attr('id'); // <---here $(this) is the clicked elem
});

また

$('.xxx').on('click','.yyy',function(){
   var id = this.id; // <---here 'this' is the clicked elem
});
于 2013-04-10T07:05:16.043 に答える
0

これを試して ::

$(document).ready(function() {
    $(".xxx").on("click", ".YYY", function(event){
        var id = $(this).attr('id');
    });
});

要素の ID 属性を取得するために間違った構文を使用していました。

于 2013-04-10T07:26:59.673 に答える
0

クリック機能にタイプミスがあります

$('.xxx').on('click','.yyy',function({
                          ----------^

$('.xxx').on('click','.yyy',function(){ // it should be (){}
   var id = this.id;
});
于 2013-04-10T07:06:08.343 に答える