我有一个输入字段,在ajax响应中,我在li标签中获得了一些记录。在每个li上都有一个onclick函数add_values
。我希望当用户点击任何li标签时,会自动按下 Enter 键。
HTML:
<input type="text" id="Search" class="txt_field" onkeyup="key_up_val(this.value);" />
JavaScript的:
function key_up_val(val) {
if(val.length > 5) {
$.ajax({
url:'ajax/google_suggestion.php',
data:'keyword='+val, // KEYWORD PASSED VALUE WILL GO TO google_suggestion.php
success:function(res) {
if(res != '') {
$(".suggestion_div").show();
$("#suggestion").html(res).fadeIn();
} else {
$(".suggestion_div").hide();
$("#suggestion").hide();
}
//alert(res); // RESPONSE
}
});
}
}
function add_val(values){ // this function is used in the ajax request onclick event
$("#Search").val(values); // add the clicked suggestion the the searched field
//clickevent();
$(".txt_field").focus();
var e = $.Event('keyup');
e.which = 13; // Character 'A'
$(".txt_field").trigger(jQuery.Event('keypress', {which: 13}));
}
在ajax响应中我得到: -
<li class="tushar morzaria" onclick="add_val('tushar morzaria')">tushar morzaria</li>
<li class="tushar meaning" onclick="add_val('tushar meaning')">tushar meaning</li>
当用户点击任何li标签时,我想在文本字段中自动按 Enter 。
答案 0 :(得分:1)
最后我得到了解决方案:
function add_val(values) {
$("#Search").val(values); //add the clicked suggestion to the searched field
$(".txt_field").focus();
var e = jQuery.Event("keydown", { keyCode: 13 });
$(".search_field input").trigger(e);
}
这会自动按下li标签上的 Enter 键。