我有这个用 PHP/JavaScript 开发的小标签系统。
对于表单提交,我将 JQuery 函数绑定到向服务器发送 Ajax 查询的“提交”事件,避免重新加载页面(并丢失其他选项卡)。我为每个表单编写了一个函数,但意识到它们是相同的(获取输入、发送 Ajax 查询、显示返回消息),所以我决定使用定义每个表单的参数创建一个通用 jquery 函数)。
我有这个功能:
function submit_search(entity){
$('#'+entity.name+'_searchform').submit(function(){
var url = public_path+entity.name+'/search';
var key = $('#'+entity.name+'_search_key').val();
$.ajax({
type: 'POST',
url: url,
data: {search_key: key},
success: entity.submit_search(result)
});
return false;
});
}
entity
带有实体名称和我要执行的成功函数的 JS 对象在哪里。该函数是在一个脚本中编写的,该脚本在加载主页时加载一次。加载选项卡后,我只需submit_search()
使用实际实体进行调用。
这在我看来是合乎逻辑的。但它不起作用。问题是 jquery 无法识别元素,例如, after var key = $('#'+entity.name+'_search_key').val();
, key 为空。
我究竟做错了什么?