[英]JQuery Ui dialog form and partial view reload
我正在尝试在ASP.NET MVC应用程序中重新加载Ajax部分视图后打开JQuery Ui对话框表单。
HTML代码
<div>
<table id="tabletotal">
<thead>
<tr>
<th>
Operator
</th>
</tr>
</thead>
<tbody>
@for (int h = 0; h < Model.ToList().Count; h++)
{
<tr>
<td>
<button type="button" class="assign" id="@Model.ElementAt(h).id" >Assign</button>
</td>
</tr>
}
</tbody>
</table>
</div>
对话形式
<div id="dialog-form" style="display:none;">
<form action=@Url.Action("Assign", "Ticket") method="post" style="padding-top:10px">
<fieldset>
<div class="form-group" >
<input id="passedId" name="passedId" type="hidden" />
<select name="idOperator" id="idOperator" class="form-control">
@foreach (Model.Data.Operator op in ViewBag.Operators)
{
<option value="@op.id">@op.name</option>
}
</select>
</div>
<div align="right" style="padding-top:10px">
<input type="submit" class="btn btn-secondary" value="Send">
</div>
</fieldset>
</form>
JS代码
$(function () {
var dialog = $("#dialog-form").dialog({
autoOpen: false,
height: 200,
width: 350,
modal: true
});
$(".assign").button().on("click", function () {
$('#passedId').val(this.id);
alert($(this).attr('id'));
//dialog.data("idt", this.id);
dialog.dialog("open");
});
});
我每3秒钟使用Ajax重新加载此局部视图。 重新加载后,httppost操作(“ Assign”,“ Ticket”)将失败,因为idPassed为null。 可能是哪个问题? 我认为重新加载后按钮的ID丢失了,但我不知道为什么。
好的,解决方案是简单的XD
$(function () {
$(".assign").button().on("click", function () {
$('#passedId').val(this.id);
createDialog();
dialog.dialog("open");
});
});
function createDialog() {
var dialog = $("#dialog-form").dialog({
autoOpen: true,
height: 310,
width: 350,
modal: true
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.