0

質問のタイトルが良くないかもしれませんが、私の問題はまさにこれです。ページにいくつかの DIV タグがあり、それらはすべて #result として始まり、 number などで続きます。これで<div id="result22"><div id="result33">jQuery でやるべきことがいくつか見つかり、期待どおりに動作しますが、唯一の問題は、既知の番号をに追加する方法です#result コードは次のとおりです。

<script type="text/javascript">
   $(document).ready(function() {
     $('.like').bind('click', function () {
       $.get("/sng_like/"+this.id+"/", function(data) {
         $('#result')[0].innerHTML=data;
     });
   });
 });
</script>

たとえば、その値を取得this.idするの一部にしたい。私のJSの知識は限られており、すでに試してみましたが、うまくいきません。#result#result22$('#result'+this.id)[0].innerHTML=data;

ありがとう、G

4

3 に答える 3

2
$(document).ready(function() {
     $('.like').bind('click', function () {
       var item=$(this);
       $.get("/sng_like/"+item.attr("id")+"/", function(data) {
         $('#result'+item.attr("id")).html(data);
     });
   });
});

jQuery 1.7以降、.on()メソッドは、イベントハンドラーをドキュメントにアタッチするための推奨されるメソッドです。だからあなたはそれを使うことを検討するかもしれません。

1.7以降のバージョンを使用している場合は、次のような関数で使用するようにコードを書き直すことができます。

$(function(){
   $(document).on("click",".like",function(){
       var item=$(this);           
       $.get("/sng_like/"+item.attr("id")+"/", function(data) {
          $('#result'+item.attr("id")).html(data);
       });
   });
});

$(function()の短縮形です$(document).ready(function()

于 2012-07-22T13:18:23.847 に答える
2

あなたは言うことができます:

$.get("/sng_like/"+$(this).attr("id")+"/", function(data)
于 2012-07-22T13:21:03.197 に答える
1
<script type="text/javascript">
   $(function() {
       $('.like').on('click', function() {
           var MyId=this.id;
           $.get("/sng_like/"+MyId+"/", function(data) {
               $('#result'+MyId).html(data);
           });
       });
   });
</script>
于 2012-07-22T13:29:53.367 に答える