立ち往生している問題があります。私は MVC 3 アプリケーションを持っています。このアプリケーションには、調査とトレーニングの概念があります。各トレーニングには 1 つの調査があります。ユーザーが調査を受けられるようにするために、HTML アクションのリンクがクリックされたときにポップアップ ページを開きます。以下は、この DetailsSurvey.cshtml のコードです。
<tr> <td class="view_detail_label">
Eğitim Adı
</td>
<td>
@Html.ActionLink(
training.Name.Name,
"AddSurvey",
new {
employeeId = Model.Id,
trainingId = training.Id
},
new {
@class = "addSurvey"
}
)
<div class="result" style="display:none;"></div>
</td>
</tr>
次に、JavaScript側で、ポップアップを開く次の関数があります。
$(document).ready(function () {
$('.addSurvey').click(function () {
$.ajax({
url: this.href,
type: 'GET',
cache: false,
context: this,
success: function (result) {
$(this).next('.result').html(result).dialog({
autoOpen: true,
title: 'Anket',
width: 500,
height: 'auto',
modal: true
}); //end of dialog
} //enf of success function
}); //end of ajax call
return false;
});
});
$(document).delegate('.addSurvey', 'click', function () {
$.ajax({
url: this.href,
type: 'GET',
cache: false,
context: this,
success: function (result) {
$(this).next('.result').html(result).dialog({
autoOpen: false,
title: 'Anket',
width: 500,
height: 'auto',
modal: true
}); //end of dialog
} //enf of success function
}); //end of ajax call
});
1 つ以上の調査リンクが存在する場合があります。ボタンをクリックすると、ポップアップウィンドウが初めて開きますが、ポップアップウィンドウを閉じて再度開いてみると、まったく開きません。新しいタブまたはウィンドウで開くと、それぞれ開きます。イベントのサブスクライブを使用delegate
しましたが、機能しません。これは、閉じるボタンで実行されたアクションが原因で、閉じた後に何らかの形で機能を失います。修正はありますか?