我试图在我的程序中使用这个JQuery代码:http://jqueryui.com/demos/autocomplete/#combobox
它基本上是一个组合框,有一个自动完成字段和一个下拉按钮。
当我尝试在表单标签中使用我的组合框时,它无法正常工作 - 当我只想查找值时,下拉按钮会一直提交表单。
示例中的原始代码如下:
$( "<button> </button>" )
.attr( "tabIndex", -1 )
.attr( "title", "Show All Items" )
.insertAfter( input )
.button({
icons: {
primary: "ui-icon-triangle-1-s"
},
text: false
})
.removeClass( "ui-corner-all" )
.addClass( "ui-corner-right ui-button-icon" )
.click(function() {
// close if already visible
if ( input.autocomplete( "widget" ).is( ":visible" ) ) {
input.autocomplete( "close" );
return;
}
// pass empty string as value to search for, displaying all results
input.autocomplete( "search", "" );
input.focus();
});
任何帮助表示赞赏:)。
答案 0 :(得分:4)
我找到了解决方案,只需进行两处小改动:
.click(function() {
// close if already visible
if (input.autocomplete("widget").is(":visible")) {
input.autocomplete("close");
return false; // CHANGE 1
}
// pass empty string as value to search for, displaying all results
input.autocomplete("search", "");
input.focus();
return false; // CHANGE 2
});