2015-08-21 54 views
0

所以我有下一個問題。我只想刷新部分視圖,但它不起作用。我試圖把兩個動作放在onclick上,但我需要按3次按鈕才能刷新。刷新部分視圖onclick動作按鈕

這是我的看法partian

<table> 
    <tr> 
     <td>Id</td> 
     <td>UserName</td> 
     <td>FirstName</td> 
     <td>LastName</td> 
     <td>Email</td> 
     <td>Rolul</td> 
     <td></td> 
    </tr> 

    @foreach (var item in Model.users) 
    { 
     <tr> 
      <td>@item.UserID</td> 
      <td>@item.UserName</td> 
      <td>@item.FirstName</td> 
      <td>@item.LastName</td> 
      <td>@item.Email</td> 
      <td>@item.RoleId</td> 
      @if (item.RoleId == 2) 
      { 
       <td><input type="button" value="MakeAdmin" onclick="makeUserAdmin(@item.UserID);"/></td> 
      } 
      @if(item.RoleId==1) 
      { 
       <td><input type="button" value="RemoveAdmin" onclick="removeUserAdmin(@item.UserID);ShowTable('@Url.Action("UserTableView","User")" /></td> 
      } 

      @if (item.RoleId == 3) 
      { 
      <td><input type="button" disabled value="SuperAdmin" /></td> 
      } 
     </tr> 
    } 

</table> 

這裏是我的js

$(document).ready(function() { 
function makeUserAdmin(userId) { 
$.ajax({ 
    type: 'post', 
    url: '/User/MakeAdmin', 
    data: JSON.stringify 
     ({ 
      userId: userId 
     }), 
    contentType: 'application/json;charset=utf-8', 
    dataType: 'json', 
    success: function (data) { 
     if (data.Succes) { 
         alert(".."); 

     } 
     else { 
      alert(data.Errors[0]); 
     } 
    } 

}); 
} 

function removeUserAdmin(userId) { 

$.ajax({ 
    type: 'post', 
    url: '/User/RemoveUserAdmin', 
    data: JSON.stringify 
     ({ 
      userId: userId 
     }), 
    contentType: 'application/json;charset=utf-8', 
    dataType: 'json', 
    success: function (data) { 
     if (data.Succes) { 

      alert("..."); 


     } 
     else { 
      alert(data.Errors[0]); 
     } 
    } 
}); 
} 
}); 

任何想法?

+0

爲什麼你叫'ShowTable'的兩倍,而在'html'在'阿賈克斯success'除去一次,並再次和那裏是你的'ShowTable'功能? –

+0

你的'ShowTable'函數在哪裏? – Pawan

+0

編輯,對不起,只是在一路試過,沒有工作.. – lolex

回答

0

問題解決了:

function makeUserAdmin(button, userId) { 
$.ajax({ 
    type: 'post', 
    url: '/User/MakeAdmin', 
    data: JSON.stringify 
     ({ 
      userId: userId 
     }), 
    contentType: 'application/json;charset=utf-8', 
    dataType: 'json', 
    success: function (data) { 
     if (data.Success) { 
      console.log($(button)); 
      $(button).attr('onclick', 'removeUserAdmin(this,' + userId + ')'); 
      $(button).val("RemoveAdmin"); 
      alert(".."); 
     } 
     else { 
      alert(data.Errors[0]); 
     } 
    } 
}); 


function removeUserAdmin(button, userId) { 

$.ajax({ 
    type: 'post', 
    url: '/User/RemoveUserAdmin', 
    data: JSON.stringify 
     ({ 
      userId: userId 
     }), 
    contentType: 'application/json;charset=utf-8', 
    dataType: 'json', 
    success: function (data) { 
     if (data.Success) { 
      console.log($(button)); 
      $(button).attr('onclick', 'makeUserAdmin(this,' + userId + ')'); 
      $(button).val("MakeAdmin"); 
      alert("..."); 
     } 
     else { 
      alert(data.Errors[0]); 
     } 
    } 
});