2013-11-24 101 views
1

我编写这个脚本,用户选中想要删除的复选框信息,点击删除按钮,用ajax删除信息。我的问题是,当我第一次删除一切都很好,但在第二次标题的对话框是空的。为什么?Jquery UI中对话框的空标题

我做这个代码显示对话框,因为我的头衔是动态的经过:

$( “#UI-ID-1”)文本(丝毫不差);

<script src="../../Scripts/jquery-1.8.3.js"></script> 
<script src="../../Scripts/jquery-ui-1.9.2.custom.js"></script> 
    <script> 
     $(function() { 
      $(":checkbox").change(function() { 
       var $this = $(this); 
       if ($this.is(":checked")) { 
        $this.closest("tr").addClass("SlectedtRow"); 
       } else { 
        $this.closest("tr").removeClass("SlectedtRow"); 
       } 
      }) 
      var tittle = ''; 
      var url = ''; 
      $("#dialog").dialog({ 
       autoOpen: false, 
       width: 400, 
       modal: true, 
       resizable: false, 
       buttons: [ 
        { 
         text: "بلی", 
         click: function() { 
          Delete(); 
          $(this).dialog("close"); 
         } 
        }, 
        { 
         text: "خیر", 
         click: function() { 
          $(this).dialog("close"); 
         } 
        } 
       ] 
      }); 
      var IsActive 
      // Link to open the dialog 
      $(".insertBtn").click(function (event) { 

       var IsSelected = false; 
       var ModalText = " آیا کاربر "; 
       $('#userForm input:checked').each(function() { 
        ModalText += this.value + " - " 
        IsSelected = true; 

       }); 

       if (IsSelected) { 
        document.getElementById('ErrorContent').style.display = "none"; 
        ModalText = ModalText.slice(0, -2); 
        if (this.id == 'DeleteUser') { 
         ModalText += " حذف گردد " 
         tittle = 'حذف کاربر' 
         url = '@Url.Action("DeleteUser", "UserManagement")'; 
        } 
        else if (this.id == 'InActiveUser') { 
         ModalText += " غیر فعال گردد " 
         tittle = 'تغییر فعالیت کاربر ' 
         url = '@Url.Action("ChangeActiveStatus", "UserManagement")'; 
        IsActive = false; 
       } 
       else if (this.id == 'ActiveUser') { 
        ModalText += " فعال گردد " 
        tittle = 'تغییر فعالیت کاربر ' 
        url = '@Url.Action("ChangeActiveStatus", "UserManagement")'; 
        IsActive = true; 
       } 
     $('#ModalMessgae').text(ModalText); 


     $("#dialog").dialog("open"); 
     $("#ui-id-1").text(tittle); 
     event.preventDefault(); 

    }  }) 

      function Delete() { 
       var list = []; 
       $('#userForm input:checked').each(function() { 
        list.push(this.id); 

       }); 
       var parameters = {}; 
       if (url == '@Url.Action("DeleteUser", "UserManagement")') { 
       parameters = JSON.stringify(list); 
      } 
      else { 
       parameters = JSON.stringify({ "userId": list, "ISActive": IsActive }); 
      } 
      $.ajax({ 
       url: url, 
       type: 'POST', 
       contentType: 'application/json; charset=utf-8', 
       dataType: "html", 
       traditional: true, 
       data: parameters, 
       success: function (data, textStatus, jqXHR) { 
        $('#updateAjax').html(data); 
       }, 
       error: function (data) { 
        $('#updateAjax').html(data); 

       } 
      }); //end ajax 
     } 
     }); 
    </script> 

HTML标记

@using Common.UsersManagement.Entities; 
@model IEnumerable<VwUser> 
@{ 
    Layout = "~/Views/Shared/Master.cshtml"; 
} 

<form id="userForm"> 
    <div id="updateAjax"> 
     @if (string.IsNullOrWhiteSpace(ViewBag.MessageResult) == false) 
     { 
      <div class="@ViewBag.cssClass"> 
       @Html.Label(ViewBag.MessageResult as string) 
      </div> 
      <br /> 
     } 
     <table class="table" cellspacing="0"> 
      @foreach (VwUser Item in Model) 
      { 
       <tr class="@(Item.IsActive ? "tRow" : "Disable-tRow")"> 
        <td class="tbody"> 
         <input type="checkbox" id="@Item.Id" name="selected" value="@Item.FullName"/></td> 
        <td class="tbody">@Item.FullName</td> 
        <td class="tbody">@Item.Post</td> 
        <td class="tbody">@Item.Education</td> 
       </tr> 
      } 
     </table> 
    </div> 
    <br /> 
    <br /> 
@if (!Request.IsAjaxRequest()) 
{ 
    <div class="btnContainer"> 
     <a href="#" id="DeleteUser" class="insertBtn">delete </a> 
     <br /> 
     <br /> 
    </div>} 

回答

0

集标题类似下面

指定对话框的标题。如果该值为null,则将使用对话框源元素上的title属性。

代码示例:

初始化与指定的标题选项对话框:

$(".selector").dialog({ title: "Dialog Title" }); 
//Get or set the title option, after initialization: 
// getter 
var title = $(".selector").dialog("option", "title"); 

// setter 
$(".selector").dialog("option", "title", "Dialog Title"); 

看到set title in dialog box