再次道歉 - 这可能是因为我对JQuery缺乏了解 - 但是我在传递参数时设置了以下函数,尝试检查并随后删除一些参数添加字段(检查应停止拆除尝试正在开展 - 如果不需要)无法对单个Jquery函数进行多次调用
jQuery.fn.clearFields = function (clearField) {
var clearfield_search = "#"+clearField+"_search";
var clearfield_link = "#"+clearField+"_link";
var clearfield_search_label = "label[for='"+clearField+"_search']";
var clearfield_link_label = "label[for='"+clearField+"_link']";
alert("About to Remove");
if ($(clearfield_search).length > 0) {
//Removal of Label and Field (Attempted)
//removal of inital break & labels
$(clearfield_search_label).prev('br').remove();
$(clearfield_search_label).remove();
$(clearfield_link_label).prev('br').remove();
$(clearfield_link_label).remove();
//Removal of fields
$(clearfield_link).remove();
$(clearfield_search).remove();
}
alert("Removed");
}
但我的困境是我看不到作出明确(多次调用)这个函数 - - 如
jQuery.fn.clearFields("ebsco");
jQuery.fn.clearfields("summon");
它似乎只有第一个函数cal我执行 - 然后没有其他事情发生 - 非常令人沮丧。
我是否必须使用for循环或.each方法来实现调用 - 或者我猜这里面有一些更重要的东西我错过了 - 或者有更好的方法可以做到这一点?
再次任何反馈非常赞赏
注意:如果你不打算在选择器上使用它,比如'$(selector')。clearFields()',你应该扩展'jQuery',而不是'jQuery.fn'。 – 2011-12-22 17:33:04
为什么要扩展JQuery?为什么不只是声明这是一个正常的功能? – 2011-12-22 17:35:27