私のajax投稿には奇妙な動作があります。まず、クラス 'remove-link'でアンカーリンクを表示します。このリンクから、変数removeLinkObjでターゲットURLを取得します。次に、jquery UIダイアログを表示して、ユーザーに確認を求めます。それから、私はURL removeLinkObjを使ってajax呼び出しを行います。ajax投稿の前にユーザーに(jQuery経由で)確認を依頼する>>奇妙な動作
問題は、STEP1ではリンクが(例えば)../../43であり、STEP2ではリンクが../../42であるという問題です。だから前の値です!なぜ値は正しいものではないのですか?私がわかっているかどうかわからない?
私のコードの目的は、投稿する前に(jquery UIダイアログを使用して)ユーザーに確認を求めることです。
$().ready(function() {
var removeLinkObj;
$('.remove-link').click(function() {
// STEP1
removeLinkObj = $(this); //for future use
$('#confirm-remove').dialog('open');
return false; // prevents the default behaviour
});
$('#confirm-remove').dialog({
autoOpen: false, width: 500, resizable: false, modal: true,
buttons: {
"Continue": function() {
// STEP2
$.ajax({
type: "Delete",
url: removeLinkObj[0].href,
cache: false,
success: function (data) {
alert(data.TransportedMaterialId);
$("#" + data.TransportedMaterialId).remove();
}
});
$(this).dialog("close");
},
"Cancel": function() {
alert('User clicked Cancel');
$(this).dialog("close");
}
}
});
})
そして、私のhtmlで:
<a href="aa/bb/44" class="remove-link">Delete</a>
はとにかくありがとうございます。
何か他のものへのhrefを、コードを変更していますか?私はちょうどあなたのコードをチェックし、うまくいきました。 http://jsfiddle.net/tseGB/ – codef0rmer