0
我收到來自輸入的意外行爲。我有以下代碼:無法防止輸入按Enter鍵時提交
<form id="search_form">
<div id="search_container">
<input type="text" id="search_text">
</div>
<select onchange="search_field_on_change()" name="search_field">
<option value="login" selected>Usuario</option>
<option value="su.name">Nombre</option>
<option value="surnames">Apellidos</option>
<option value="email">Correo</option>
<option value="role">Rol</option>
<option value="access">Acceso</option>
<option value="center">Centro</option>
</select>
<button type="button" onclick="search()">Buscar</button>
<span id="modify_user_message"></span>
</form>
當我按下輸入元件上的回車鍵,提交表單並執行以下請求:
GET home.php?search_field=login
我想避免這種行爲。我這個嘗試過:
$('#search_text').keypress(function(e){
console.log('Hello');
e.preventDefault();
if (e.which == 13){
search();
}
});
但我不明白在控制檯任何東西,所以我覺得前可捕獲的事件執行請求。
我該怎麼辦?
謝謝。
試了一下並沒有什麼變化。 – vjsp90
您是否嘗試過在'if'塊中插入'e.preventDefault();'部分,然後嘗試將條件更改爲'e.keyCode == 13'? – Vance
剛試過,也是一樣的行爲。出於某種原因,這段代碼從不執行。也許請求被另一個元素拋出,但我找不到任何東西。 – vjsp90