也许我';我们已经失去了剧情,但是为什么这一小块JavaScript不起作用呢?
我想为我的表单提供一个通用的错误处理程序也许我';我们已经失去了剧情,但是为什么这一小块JavaScript不起作用呢?,javascript,jquery,Javascript,Jquery,我想为我的表单提供一个通用的错误处理程序 var errorsBox = function() { var $errorBox = $('#form-error'); return { add: function(errors) { if ($errorBox.length === 0) { $errorBox = $('<div id="form-error"><ul></u
var errorsBox = function() {
var $errorBox = $('#form-error');
return {
add: function(errors) {
if ($errorBox.length === 0) {
$errorBox = $('<div id="form-error"><ul></ul></div>').appendTo('form');
};
$errorBox.find('ul > li').remove();
$.each(errors, function(i, error) {
$errorBox.find('ul').append('<li>' + error + '</li>');
});
}
};
};
var errorsBox=函数(){
var$errorBox=$(“#形式错误”);
返回{
添加:函数(错误){
如果($errorBox.length==0){
$errorBox=$(“
”).appendTo('form');
};
$errorBox.find('ul>li').remove();
$.each(错误,函数(i,错误){
$errorBox.find('ul').append(''+error+' ');
});
}
};
};
你可以戴着它玩
我要走了
errorsBox.add不是一个函数
我相信这是显而易见的,但我似乎不明白为什么这可能不起作用
我做错了什么
谢谢 您将
errorsBox
定义为一个函数。所以,你也可以这样称呼它:
errorsBox().add(...)
您将
errorsBox
定义为一个函数。所以,你也可以这样称呼它:
errorsBox().add(...)
errorsBox是一个返回对象的函数。返回的对象有一个add()函数 你可以做:
errorsBox().add(['error1', 'error2']);
但它看起来有点奇怪。也许你没有按照你想要的方式设置它
如果您希望能够按自己的方式调用它(errorsBox.add(…)
),请尝试以下操作:
var errorsBox = {
$errorBox: ('#form-error'),
add: function(errors) {
if ($errorBox.length === 0) {
$errorBox = $('<div id="form-error"><ul></ul></div>').appendTo('form');
};
$errorBox.find('ul > li').remove();
$.each(errors, function(i, error) {
$errorBox.find('ul').append('<li>' + error + '</li>');
});
}
};
var errorsBox={
$errorBox:(“#表单错误”),
添加:函数(错误){
如果($errorBox.length==0){
$errorBox=$(“
”).appendTo('form');
};
$errorBox.find('ul>li').remove();
$.each(错误,函数(i,错误){
$errorBox.find('ul').append(''+error+' ');
});
}
};
errorsBox是一个返回对象的函数。返回的对象有一个add()函数
你可以做:
errorsBox().add(['error1', 'error2']);
但它看起来有点奇怪。也许你没有按照你想要的方式设置它
如果您希望能够按自己的方式调用它(errorsBox.add(…)
),请尝试以下操作:
var errorsBox = {
$errorBox: ('#form-error'),
add: function(errors) {
if ($errorBox.length === 0) {
$errorBox = $('<div id="form-error"><ul></ul></div>').appendTo('form');
};
$errorBox.find('ul > li').remove();
$.each(errors, function(i, error) {
$errorBox.find('ul').append('<li>' + error + '</li>');
});
}
};
var errorsBox={
$errorBox:(“#表单错误”),
添加:函数(错误){
如果($errorBox.length==0){
$errorBox=$(“
”).appendTo('form');
};
$errorBox.find('ul>li').remove();
$.each(错误,函数(i,错误){
$errorBox.find('ul').append(''+error+' ');
});
}
};
我想我们每个人都会有这样或那样的经历。:)我想我们每个人都会有这样或那样的经历顺便说一句,如果我要使用对象文字,我需要使用this.$errorBox
来访问该变量,不是吗?顺便说一句,如果我要使用对象文字,我需要使用this.$errorBox
来访问该变量,不是吗?