【发布时间】:2016-12-07 18:15:38
【问题描述】:
我在 MVC3 项目中从表单调用 JS 方法时遇到问题:我有一个“搜索”页面,没有带有两个按钮的表单 - 搜索和取消。点击搜索运行ProductDefinition中的JS函数runSearch。
<div id="productSearch-dialog" class="modal fade" style="width: 1000px; display: none">
<div class="modal-header">
<button class="close" aria-hidden="true" data-dismiss="modal" type="button">×</button>
<h3>Search Results</h3>
</div>
<div class="modal-body" style="height: 650px;">
<div>
<input id="inputname" type="text" /><font class="red-font" id="lblrequired" style="display: none">*</font>
</div>
<div id="searchresultcontain" class="grid">
</div>
<div id="Pagination" class="pagination">
</div>
</div>
<div class="modal-footer">
<button class="btn btn-primary" onclick="productDefinition.runSearch();">Search</button>
<button class="btn btn-primary" data-dismiss="modal">Cancel</button>
</div>
当我按下 时如何运行这个 JS 方法(runSearch)?据我了解,这将是表单事件的 onsubmit 事件,因此我需要添加具有 onsubmit 属性的表单元素。我尝试使用 BeginForm 辅助方法包围输入字段:
@using (Html.BeginForm(new { onsubmit = "productDefinition.runSearch();" }))
{
<input id="inputname" type="text" /><font class="red-font" id="lblrequired" style="display: none">*</font>
<input type="submit" value="Submit" style="visibility: hidden" />
}
但它似乎不起作用 - 当我按 Enter 时,我出于某种原因获取页面的源并到达 localhost/?onsubmit=productDefinition.runSearch() URL。
问题的根源是什么?如何让 onsubmit 的行为与 onclick 的行为相同?
【问题讨论】:
-
点击搜索按钮时不会使用哪个js函数?
-
在提交表单时你能运行 JavaScript 吗?
-
当 onlick - 是的,onsumbit no
标签: c# javascript html asp.net-mvc asp.net-mvc-3