这是我的 javascript 文件的摘录:
$(function() {
if ($('form#search').length > 0) {
setSearchForm();
}
});
function setSearchForm() {
var text=$('form#search input[type=text]');
if (text.val().length != 0) {
text.next('input[type=submit]').removeProp('disabled');
} else {
text.next('input[type=submit]').prop('disabled', true);
}
}
我的问题是:我的所有子页面.js
都使用此文件,但并非所有子页面都有search
表单。
因此,在准备好文档时,我会检查是否存在搜索表单,然后setSearchForm()
仅在存在搜索表单时才调用。
我发现这是防止setSearchForm()
在每个页面上运行的唯一方法。因为如果没有搜索表单并且无论如何都会触发该功能,那么我js
文件中的其他功能将不再起作用。
有没有更优雅的解决方案,例如以某种方式重写函数?
我对 jQuery 相当陌生,所以解决方案可能很简单!
谢谢你的帮助。