我希望用户单击某些内容,让它自动填充输入字段(搜索字段),然后自动发送Enter键以执行它。我的下面的代码,它似乎没有发送enter命令。这是我的代码,我将必须手动按Enter键才能开始搜索。代码中有错误吗?谢谢。

jsfiddle在这里:https://jsfiddle.net/eliluong/5n50mun2/

$('.clickme').bind('click', function() {
    var $this = $(this);
    var input_text = "search for this";
    $('#quicksearch').val(input_text);
    $('#quicksearch').focus();
    var e = jQuery.Event('keypress');
    e.which = 13;
    $('#quicksearch').trigger(e);
});

最佳答案

不太确定,请替换为:

$('#quicksearch').trigger(e);

有了这个:
$(this).trigger(e.which);

另外,您可以只使用内置的JQueries提交功能,而无需捕获按键:
$('.clickme').click(function () {
    var input_text = "search for this";
    $('#quicksearch').val(input_text);
    $('#quicksearch').submit();
});

关于javascript - 将按键发送到表单字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34458398/

10-11 14:12