我创建了一个搜索表单,并设置了一个函数,该函数告诉浏览器在文本字段中输入字符串并按下按钮.value/nodes
时显示JSON文件:
Search
我想在输入字段填满并且用户按下键盘上的按钮$("#IDofTheSearchButton").on('click', function);
时也调用相同的功能。
我该怎么做?
我通过利用Enter
事件侦听器,如下所示编辑代码,该代码现在可以工作:
keydown
我还添加了$('#IDofTheInputField').on('keydown', function(e) {
if (e.which == 13) {
e.preventDefault();
nameOfTheFunction();
}
} );
方法,以防止preventDefault()
键激活Enter
事件(否则,该代码不适用于该特定键)。
答案 0 :(得分:4)
通过在输入框中添加“ keydown”事件侦听器,您将能够调用该函数。 13代表“ Enter”键。
$('#inputExample').on('keydown',function(e) {
// You could use e.which == 13, but .which has been deprecated
if(e.key == 'Enter') {
// You could use the .click() function below, but it is better to call the function directly.
// $("#submitButton").click();
someFunction();
}
});
$('#submitButton').on('click', someFunction);
function someFunction(){
alert("Function has been called")
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="inputExample" type="text">
<button id="submitButton" type="submit">Submit</button>
答案 1 :(得分:0)
您可以使用submit
jquery方法。
像这样
$("#IDofTheSearchButton").submit(function);
因此,每当用户完成键入并按Enter时,都会调用该函数。
答案 2 :(得分:0)
尝试一下。
$('.input').keypress(function (e) {
if (e.which == 13) {
$('#IDofTheSearchButton').click();
return false;
}
});