0
<script type="text/javascript">
$(function(){
$("#headings_help").click(function(){
$("#box").dialog({

    title: 'Heading and Subheading IDs',
    width: 700,
    height:300,
    modal:true,
    resizable:false,
    buttons: [
    {
      text: 'Close',
      click: function(){
      $(this).dialog('close');
    }
    }
    ]

    });
    });


});
</script>

上記の場合javascript、フォームの一部としてこのインライン要素があるとします。

Help<a id='headings_help' ><img src='questionmark.png' border='0' /></a>

上記の質問マークがウェブページの複数の場所にあるとすると、jqueryコードは質問マークリンクの最初のインスタンスに対してのみ機能します。同じページの他の質問マークには機能しません。

4

4 に答える 4

1
change this
Help<a class='headings_help' ><img src='questionmark.png' border='0' /></a>
and then
<script type="text/javascript">
$(function(){
$(".headings_help").click(function(){
$("#box").dialog({

    title: 'Heading and Subheading IDs',
    width: 700,
    height:300,
    modal:true,
    resizable:false,
    buttons: [
    {
      text: 'Close',
      click: function(){
      $(this).dialog('close');
    }
    }
    ]

    });
    });


});
</script>
于 2013-02-27T15:01:42.773 に答える
0

答えはIDを使用するのではなく、共通のクラスを使用することです。

IDは単数であり、ページ上で繰り返すことを意図したものではありません。

したがって、IDをクラスに変更します

<a class='headings_help' ><img src='questionmark.png' border='0' /></a>

クラスを使用するようにセレクターを変更する

$(".headings_help").on("click, function(){...});
于 2013-02-27T14:44:39.613 に答える
0
 apply same css class to all links 

 then use 

 $(".className").click(function(){
      .........
})

複数の要素にontidを使用することはできません。複数の要素にイベントを適用する場合は、すべてにcssクラスを適用してから使用します。

于 2013-02-27T14:46:48.743 に答える
0
// Get all the links that have an image with `src` `questionmark.png`
var $Links = $.map($('a img[src="questionmark.png"]'), function () {
    return $(this).parent(); // return the parent
});

// Apply click for each of the links
$Links.click(function () {
    // Do your stuff here.
});
于 2013-02-27T14:53:05.963 に答える