搜索表单:单击名称时提交

时间:2014-05-17 18:41:55

标签: javascript jquery html

在我的搜索框中,当用户按下三个字母时,会显示潜在点击列表。

但是当用户从此列表中选择名称时,他仍然必须按Enter键。如何避免这种情况当他选择他的名字时,他的名字应该自动提交。

更新:是否可以仅在用户从列表中选择名称时提交,而不是在他按下回车时提交?

这是HTML代码:

    <form action="10_miles.php" method="post">
        <p><label>Please enter your LAST name and find your name in the list: </label><br><br>
        <input type='text' name='full_name' value='' class='auto'></p>
    </form>

我正在使用这个javascript:

<script type="text/javascript">
            $(function() {
            $(".auto").autocomplete({
                source: "search_develop.php",
                minLength: 3
            }); 
        });
    </script>

3 个答案:

答案 0 :(得分:2)

你这样做;

<script type="text/javascript">
            $(function() {
            $(".auto").autocomplete({
                source: "search_develop.php",
                minLength: 3, 
                change: function (event, ui) { 
                     $('form').submit(); 
                },
                close: function (event, ui) { 
                     $('form').submit(); 
                }
            }); 
        });
    </script>

答案 1 :(得分:1)

$('#selector').click(function(){   
       $('form').submit(); 
});

答案 2 :(得分:0)

尽管你已经接受了答案,但我认为提出一个纯粹的JavaScript相关答案会很好。

setInterval(function(){
    if (document.getElementById("name").value.toLowerCase() == "marzonie") {
      document.getElementById("status").innerHTML='Does equal.';
    } else {
      document.getElementById("status").innerHTML='Doesn\'t equal.';
    }
}, 100);

document.getElementById("submit_form").onsubmit=function( event ){ event.preventDefault(); }

它每100ms循环并验证输入值是否等于“marzonie”,并相应地更改状态“innerHTML

JSFiddle