5

リンククリックでjquery関数を呼び出そうとしましたが、成功しませんでした。

これが私のhtmlです:

<a href="..." id="removeItem" checkID="12" >Delete</a>
<a href="..." id="removeItem" checkID="13" >Delete</a>
<a href="..." id="removeItem" checkID="14" >Delete</a>

    $("#removeItem").click(function(checkID) {
    return false;
    var checkID = $(this).attr("checkID");
    $("#removeDialog").dialog( {
        buttons: {
            "No" : function () {
                $(this).dialog("destroy");
                $('input#CheckName').focus();
            },
            "Yes": function () {
                $.ajax({
                    url: "itemRemoveWS.html?id=checkID",
                    data: {
                        "action" : "remove",
                        "id" : checkID
                    },
                    success: function (data) {
                        $("#removeDialog").dialog("destroy");
                        var ang = '';
                        var obj = $.parseJSON(data);
                        $.each(obj, function() {
                           ang += '<table class="form"><tr><td width="45">' + this["CheckID"] + '</td><td width="140">' + this["Name"] + '</td><td width="95">' + this["CheckNumber"] + '</td><td align="right" width="70">$' + this["Amount"] + '</td><td width="220" style="padding-left: 15px;">' + this["Description"] +'</td><td><a href="#">Delete</a></td></tr></table>';
                        });
                        $('#container').html(ang);
                        $("input#Amount").val('');
                        $("input#CheckName").val('');
                        $("input#Check_Number").val('');
                        $("select#Company").val('MMS');
                        $("th#dept").hide();
                        $('input#CheckName').focus();
                    }
                });
            }
        }
    });
});
4

4 に答える 4

9

return false;クリックイベントコールバック関数の最初の命令があります。これは、何もしていないことを意味します。

ロジックの最後の行に配置するか、e.preventDefault(); 使用するように変更してください

$("#removeItem").click(function(e) {...}

補足として、$("#removeItem").click(function(checkID) {} checkIDは、要素ID属性ではなく、ここでトリガーされたイベントへの参照になります。

また、ID属性は、各htmlページの要素ごとに一意である必要があります。

于 2012-12-05T20:38:18.370 に答える
2

リンククリックで関数を呼び出すには、hrefとしてjavascript:void(0)を使用してから、リンクのonclickイベントに関数呼び出しを追加します。

<a runat="server" id="myButton" href="javascript:void(0);" onclick="myFunction();" ></a>
于 2012-12-05T20:42:30.610 に答える
0

を使用する代わりに、次のreturn falseようにします。

checkID.preventDefault();

また、同じIDを持つ2つの要素を持つことは許可されていません。

于 2012-12-05T20:40:14.193 に答える
0

ローストが言ったように、falseを返すことはおそらくあなたの問題です。それはあなたがこれを意味したということかもしれません:

checkID.preventDefault();
于 2012-12-05T20:40:27.813 に答える