DropdownListFor
@Html.DropDownListFor(x => x.selectedDateFilter,
new SelectList(Model.bydatefilter, "id", "dt", Model.selectedDateFilter),
"--Select Date--",
new { onchange = @"this.form.submit();", @class = "form-control" })
Jquery的
$("#selectedDateFilter").change(function (e) {
if ($("#selectedDateFilter option:selected").index() == 0) {
alert("Please select the date.");
return false;
}
return true;
});
Hello Friends,
我的问题是,当在下拉列表中选择一个项时,验证消息按预期显示,但同时表单正在提交。
如何在此场景中选择OPtionText时阻止表单提交。
提前致谢。
请帮忙
答案 0 :(得分:2)
只需从下拉列表中删除onchange=@"this.form.submit();"
即可。它应如下所示:
@Html.DropDownListFor(x => x.selectedDateFilter,
new SelectList(Model.bydatefilter, "id", "dt", Model.selectedDateFilter),
"--Select Date--",
new { @class = "form-control" })
它会正常工作。
此onchange=@"this.form.submit();"
强制表单提交。
编辑:
如果要在正确验证时提交,请将其添加到jquery:
$("#selectedDateFilter").change(function (e) {
if ($("#selectedDateFilter option:selected").index() == 0) {
alert("Please select the date.");
return false;
}
else
{
$(this).parent('form').submit();
}
});