以下のコードがあります。
#searchbutton から #tempbutton (オブジェクトをパラメーターとして) をトリガーすると、正常に動作します。しかし、#myid から同じことをしていると、トリガーされません。
私が間違っている可能性のあるアイデアはありますか?ありがとう
これが私のコードです。getAjax がどこかから呼び出されたと仮定してください。短く/読みやすくするために、多くのコードを削除する必要があっただけです。しかし、その部分は間違いなく機能します。:)
var onclickmyid = function(event, parameters) {
event.preventDefault();
console.log(event.data); //works. it displays the listlength passed
$("#tempbutton").trigger("click", [ "test" ]); // works but obviously, it won't be an object
//$("#tempbutton").trigger("click", [{ name:"test" }]); // doesn't work although it' the same as the one below
};
var onclicktempbutton = function(event, parameters) { console.log(parameters); }
var onclicksearchbutton = function(event) {
event.preventDefault();
$("#tempbutton").trigger("click", [{ name:"test" }]); //works
};
$(document).on("click", "#tempbutton", onclicktempbutton);
$(document).on("click", "#searchbutton", onclicksearchbutton);
function getAjax() {
$.ajax({
url: my-url-here
, cache: false
, dataType: "json"
, data: {}
, success: function(data, status) {
displayTopicList({ data:data });
}
});
}
function displayTopicList(parameters) {
$.each(parameters.data, function(index, option) {
$("#mylinks").append($("<a></a><br />").attr("id", "myid"+option.id).attr("href", "javascript:void(0)");
});
$(document).on("click", "[id^=myid]", { listlength:parameters.data.length }, onclickmyid);
}