1

2つの入力フィールドと2つのボタンが連続しています。1ページに3行以上あるようなものです。各行について、2つの入力フィールドに値がある場合にのみ2つのボタンを有効にする必要があります。このように2つのボタンにIDを付けました。

<a href="#" style="margin: auto;" id="first_link"></a>
<a href="#" style="margin: auto;" id="second_link"></a>

jqueryで私は次のように与えました:

$('#first_link').click(function() {alert("Some info will come soon")});
$('#second_link').click(function() {alert("new info will come soon")});

ただし、このアラートはすべての行に送信されます(3行に3つのアラートが表示されます)。そのページのテーブル全体に対してアラートを1回だけ表示するにはどうすればよいですか。

4

2 に答える 2

0
$('#first_link').click(function(e) {
    e.preventDefault(); // will prevent the link's default behavior
    e.stopPropagation(); // will stop event bubbling
    alert("Some info will come soon");
});

$('#second_link').click(function(e) {
    e.preventDefault(); // will prevent the link's default behavior
    e.stopPropagation(); // will stop event bubbling
    alert("new info will come soon");
});

別の例。

于 2012-05-05T13:12:04.613 に答える
0

preventdefaultまたはを試してみてくださいreturn false。これは、イベントがバブリングしているためです。

$('#first_link').click(function(e) {
  e.preventDefault();
  alert("Some info will come soon")
 });

http://www.quirksmode.org/js/events_order.html

于 2012-05-05T13:11:17.853 に答える