フォームの New Trade ボタンをクリックすると、jquery ui ダイアログが開きます。しかし、私はグリッドビューにリンクボタンがあり、リンクボタンをクリックするとjquery uiダイアログが開き、新しい取引ボタンをクリックする前にjquery uiダイアログが開きます。しかし、新しい取引ボタンをクリックした後、グリッドビューのリンク ボタンをクリックすると、「ViewTradeDialog(id)」関数が呼び出され、ダイアログが開かず、エラー メッセージ「$vwdia.html(data.dialog is not)」が表示されます。機能"。私のコードは次のとおりです。
@using (Html.BeginForm("NewTrade", "Trade", FormMethod.Post, new { id = "searchForm" }))
{
<div id="searchbtn">
<input id="btn_newtrade" type="submit" value="New Trade" />
</div>
}
jquery code
<script type="text/javascript">
$(function () {
var $loading = $('<img src="../../loading.gif" alt="loading">');
var $dialog = $('<div></div>').append($loading);
$('#searchForm').submit(function (e) {
var url = this.action;
$.ajax({
autoOpen: false,
url: url,
success: function (data) {
$dialog.html(data).dialog({
zIndex:1,
width: 1400,
height: 600,
resizable: false,
title: 'New Trade Details',
modal: true,
buttons: {
"close": function () {
$dialog.dialog('close');
},
"Add Trade": function () {
$dialog.dialog('close');
$.ajax({
type: 'POST',
url: url
});
}
}
});
}
});
return false;
});
});
function ViewTradeDialog(id) {
alert(id);
var $vwdia = $('<div></div>');
var url = '/Trade/ViewTrades?tradeid=' + id;
$.ajax({
url: url,
success: function (data) {
$vwdia.html(data).dialog({
width: 600,
height: 600,
resizable: false,
title: 'View Trade Details',
modal: false,
buttons: {
"close": function () {
$vwdia.dialog('close');
}
}
});
}
});
return false;
}