この質問は、これら 3 つの質問の継続的な学習/発見です。私にとってこの問題はここから始まりました:
この投稿は、イベント ハンドラーを動的にアタッチすることに関する @StephenMuecke の投稿に関するものです。これは私にとって初めてだったので、読んでみる必要がありましたが、今ではそれが理にかなっていることがわかりました.
ドキュメントと多数のSO投稿を読んだ後でも、クリックイベントハンドラーを起動できないようです??
今回は別のアプローチを取ることにしました。問題を示すjsfiddleを作成しました。http://jsfiddle.net/ramjet/93nqs040/17/
ただし、フレームワーク内で動作させるために、jsfiddle を現実から多少変更する必要がありました。以下が実際のコードです。
モーダルを起動する親ウィンドウ スクリプト...バインドされたアラートが起動します。
<script>
$(document).ready(function ()
{
$("#new").click(function (e)
{
e.preventDefault();
var ischanging = false;
var financierid = 0;
var detailsWindow = $("#window").data("kendoWindow");
if (!detailsWindow)
{
// create a new window, if there is none on the page
detailsWindow = $("#window")
// set its content to 'loading...' until the partial is loaded
.html("Loading...")
.kendoWindow(
{
modal: true,
width: "800px",
height: "400px",
title: "@T("...")",
actions: ["Close"],
content:
{
url: "@Html.Raw(Url.Action("ActionName", "Controller"))",
data: { financierId: financierid, isChanging: ischanging }
}
})
.data("kendoWindow").bind('refresh', function (e)
{
alert('Bound');
$('document').on("click", "#save", function () { alert("i work");});
}).center();
}
detailsWindow.open();
});
</script>
モーダルの完全な HTML は必要ないと思っていましたが、必要な場合は更新します。これは、動的にバインドしようとしている要素です。
<input type="button" id="save" style="margin-right:10px;" value="Save Record" />