我有一个调用jQuery对话模式poup的click函数。我希望在对话框的open函数中调用URL.Action,它需要传递参数。但我需要动态传递数据参数(变量)。 我该如何动态传递?如何将其存储在变量中并将其传递给“data:”字段?我无法使用以下代码。
注意:同样来自语法, - url ='@(Html.Raw(Url.Action(“ShowPopUp”,“Home”,new {serviceID = svc,serviceMasterId = masterId,serviceStatusId = statusId}))) >显示以下警告消息 1.当前上下文中不存在名称'svc' 2.当前上下文中不存在名称“masterId” 3.当前上下文中不存在名称“statusId”
$('.lnkRequest').click(function () {
serviceId = $(this).attr('serviceID');
$('#dialog').css("display", "block");
$('#dialog').data('svcId', $(this).attr('serviceID'));
$('#dialog').data('svcMasterId', $(this).attr('serviceMasterID'));
$('#dialog').data('svcStatusId', $(this).attr('serviceStatusID'));
$('#dialog').dialog('open');
return false;
});
$('#dialog').dialog({
autoOpen: false,
modal: true,
height: 'auto',
width: 'auto',
draggable: false,
open: function (event, ui) {
var svc = $(this).data('svcId');
var masterId = $(this).data('svcMasterId');
var statusId = $(this).data('svcStatusId');
url = '@(Html.Raw(Url.Action("ShowPopUp", "Home", new { serviceID = svc, serviceMasterId = masterId, serviceStatusId = statusId })))',
$(this).load(url);
}
});
答案 0 :(得分:1)
jQuery的load
方法接受data
参数。
$('#dialog').dialog({
autoOpen: false,
modal: true,
height: 'auto',
width: 'auto',
draggable: false,
open: function (event, ui) {
var svc = $(this).data('svcId');
var masterId = $(this).data('svcMasterId');
var statusId = $(this).data('svcStatusId');
url = '@(Html.Raw(Url.Action("ShowPopUp", "Home")))';
$(this).load(url,
{
serviceId: svc,
serviceMasterId: masterId,
serviceStatusId: statusId
});
}
});
来源:http://api.jquery.com/load/
请参阅页面上的最后一个示例。
答案 1 :(得分:0)