我有一个隐藏的div,无缘无故再次出现。
再见者;
@using (Html.BeginForm("DoSomethingAction", "WorkSpace", FormMethod.Post, new { data_ajax = "true", id = "frmHidden"}))
{
<div id="theHiddenDiv">
...just some textboxes here and a submit button
</div>
}
在同一页面的另一个表单中,我有以下内容,只是切换按钮可见性。提交此表单后,隐藏的重新出现。
@using (Html.BeginForm("PostSomethingAction", "WorkSpace", FormMethod.Post, new { data_ajax = "true", id = "frmMainStuff" }))
{
...
<a data-role="button" data-theme="b" onclick="toggleVis();" data-icon="plus" data-iconpos="left">+ something?</a>
...
<input type="submit" value="Go!" name="Command" />
...
}
唯一一段改变可见性的代码
$(document).ready(function () {
$('#theHiddenDiv').hide();
});
function toggleVis() {
$('#theHiddenDiv').toggle();
}
答案 0 :(得分:1)
通过向data_ajax="true"
添加Html.BeginForm
,它将像Ajax.BeginForm
一样运作。这意味着您的表单提交是通过ajax进行的,而页面没有重新加载。您只是重新加载页面/表单的内容。
这意味着$(document).ready()
不会再次触发,因为这是Ajax负载而不是页面加载。
选项:
data_ajax="true"