我有一个ASP.NET MVC5应用程序。我在其中一个页面中只有一个文本框,它实际上是一个jquery自动完成小部件。我有绑定到文本框的字段的MVC5“必需”数据注释。非常接近文本框,有一个超级链接作为提交按钮。单击此超链接后,我提交表单,如$(“#myform”)。submit()。这将调用表单操作方法,并将从控制器操作方法返回一个新视图。验证工作正常。但是当您单击“输入”按钮时会出现一个问题,它将提交不是自动完成建议的值。我已经处理了自动完成小部件的更改事件,如下所示。
$('#selectedPlace').autocomplete({
source: function (request, response) {
predictUsingGoogle(request, response);
},
// Sets the selected value to text box
select: function (event, ui) {
event.preventDefault();
$('#selectedPlace').val(ui.item.label);
$('#selectedPlaceID').val(ui.item.value);
$("#searchBtn").focus();
},
focus: function (event, ui) {
event.preventDefault();
$("#selectedPlace").val(ui.item.label);
},
change: function(event,ui)
{
if (ui.item == null) {
$("#selectedPlace").val('');
$("#selectedPlace").focus();
}
},
minLength: 3
});
这将帮助我避免单击超链接按钮时的自由文本输入,但它不会帮助我输入按钮单击。有人可以在这里告诉我吗?