我想重新加载我的页面,在输入中设置我的值搜索(在localStorage中存储),之后模拟一个按键(类型13)。
这是我的代码:
$( function () {
if( (localStorage.getItem("search")) && (sessionStorage.getItem("reloadAfterPageLoad")!="false") )
{
$('#datatable_filter input').val(localStorage.getItem("search")).focus().trigger(jQuery.Event('keypress', { keycode: 13, which: 13, charCode: 13 }));
}
});
focus()作为localStorage.getItem(" search"),但我的事件永远不会发生。
我已经尝试使用jQuery触发keypress事件的Definitive方法的解决方案:
$( function () {
if( (localStorage.getItem("search")) && (sessionStorage.getItem("reloadAfterPageLoad")!="false") )
{
var e = jQuery.Event("keypress");
e.which = 13;
alert( "la recherche était : "+localStorage.getItem("search"));
$('#datatable_filter input').val(localStorage.getItem("search")).focus().trigger(e);
sessionStorage.setItem("reloadAfterPageLoad", "false");
}
它也不起作用。
对这个问题有什么看法? 在此先感谢您的帮助
答案 0 :(得分:0)
您可以将输入的键入/更改逻辑移动到另一个功能并调用它。
$('input').keypress(function(event) {
updateTable(event);
});
function updateTable(event) {
//update the table
}
#onLoad
$(function() {
if ((localStorage.getItem("search")) && (sessionStorage.getItem("reloadAfterPageLoad") != "false")) {
$('#datatable_filter input').val(localStorage.getItem("search")).focus();
updateTable();
}
});