2010-06-17 25 views
0

我在aspx頁面上有get/post/JSON函數。此頁面將在文本框中輸入的數據添加到由javascript填充的表格中。當用戶選擇提交按鈕。如果文本框不爲空,則有一個彈出按鈕告訴用戶文本框中的數據未保存在表中。我如何在控制器的發佈操作中有確認「ok/cancel」彈出窗口? 我簡要總結了我的代碼的外觀。如何在按鈕上添加確認彈出窗口(MVC中的GET POST操作)?

... 
<% using (Html.BeginForm("AddName", "Name", FormMethod.Post, new { id = "AddNameForm" })) { %> 
... 
<table id="displayNameTable" width= "100%">       
    <tr> 
     <th colspan="3">Names Already Added</th> 
    </tr> 
    <tr> 
     <td style="font-size:smaller;" class="name"></td> 
    </tr> 
</table> 
... 
<input name="Name" id="txtInjuryName" type="text" value="<%=test.Name %>" /> 
... 
<input type="submit" name="add" value="Add"/> 
<% } %> 
<form id="form1" runat="server"> 
      string confirmNext = ""; 
    if (test.Name == "") 
    { 
     confirmNext = "return confirm('It seems you have a name not added.\n\nAre Continue?')"; 
    }%> 
    <input type="submit" name="getNext" value="Next" onclick="<%=confirmNext%>" /> 
</form> 

回答

4
<script type="text/javascript"> 

    $(document).ready(function(){ $("#form1").bind("submit", function(){ 
     if(!confirm('It seems you have a name not added.\n\nAre Continue?')) 
       return false; 
     });}   
    }); 

</script> 
+0

使用jQuery將客戶端交互與html元素分開的+1。有助於可維護性。 – Amir 2010-06-17 16:20:15

+0

這是一個很好的方法去...但如何檢查,看看文本框是否爲空? – MrM 2010-06-17 18:07:12

+0

如果($(「#txtInjuryName」)。val()==「」){...} – Gregoire 2010-06-17 18:08:54

4

你可以使用窗體的onsubmit事件:

<form id="form1" onsubmit="return confirm('It seems you have a name not added.\n\nAre Continue?')"> 
    <input type="submit" name="getNext" value="Next" /> 
</form> 

而且爲什麼runat="server"在ASP.NET MVC應用程序?你也可以考慮指定一個action這個表單發佈到第一個表單並使用Html.BeginForm助手。

相關問題