JQuery Ui对话框表单和部分视图重新加载

时间:2017-04-12 10:24:13

标签: javascript jquery asp.net ajax asp.net-mvc

我试图在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");
});
});

我使用Ajax每3秒重新加载一次这个局部视图。在reaload之后,httppost操作(“Assign”,“Ticket”)失败,因为idPassed为null。哪个可能是问题?我认为重新加载后按钮的ID丢失但我不知道为什么。

1 个答案:

答案 0 :(得分:0)

好的解决方案很简单XD

decimal(8,5)