Javascript 即使选中复选框也会出现错误
从我找到的所有示例中,如果选中复选框,则使用Javascript 即使选中复选框也会出现错误,javascript,jquery,extjs,Javascript,Jquery,Extjs,从我找到的所有示例中,如果选中复选框,则使用is(':checked')应返回true,否则返回false。在我的例子中,它在两种情况下都返回false。我犯了什么错 { xtype: 'checkbox', boxLabel: 'Show message', id: 'mainBox', handler: function() { alert($(
is(':checked')
应返回true,否则返回false。在我的例子中,它在两种情况下都返回false。我犯了什么错
{
xtype: 'checkbox',
boxLabel: 'Show message',
id: 'mainBox',
handler: function() {
alert($(this).is(':checked'));
}
因为extjs事件处理程序中的
this
不会引用dom元素,而this
将引用extjs checkbox对象。jQuery将无法使用extjs对象引用找到目标元素。取而代之的是checkbox方法,它将返回checked状态值,因此
试一试
因为extjs事件处理程序中的
this
不会引用dom元素,而this
将引用extjs checkbox对象。jQuery将无法使用extjs对象引用找到目标元素。取而代之的是checkbox方法,它将返回checked状态值,因此
试一试
正如您在jQuery文档中看到的,该函数返回一个jQuery对象 如果需要某种类型的布尔值作为返回值,可以尝试以下代码:
alert($(this).is(':checked').length > 0);
但是对于checkbox元素,使用'checked'属性也应该起作用:
alert(this.checked);
如果要使用jQuery,甚至可以尝试以下方法:
alert($(this).attr('checked') === 'checked');
正如您在jQuery文档中看到的,该函数返回一个jQuery对象 如果需要某种类型的布尔值作为返回值,可以尝试以下代码:
alert($(this).is(':checked').length > 0);
但是对于checkbox元素,使用'checked'属性也应该起作用:
alert(this.checked);
如果要使用jQuery,甚至可以尝试以下方法:
alert($(this).attr('checked') === 'checked');
根据,我将尝试以下方法:
{
xtype: 'checkbox',
boxLabel: 'Show message',
id: 'mainBox',
handler: function (field , value) {
alert(value);
}
}
根据,我将尝试以下方法:
{
xtype: 'checkbox',
boxLabel: 'Show message',
id: 'mainBox',
handler: function (field , value) {
alert(value);
}
}
这段代码生成了什么?是
还是别的什么?问题是,这个是什么??处理函数似乎缺少一个结束括号。美元(这个)指的是什么?请提供您的全部代码,以便我们可以看到您试图实现的目标。谢谢。这段代码生成了什么?是
还是别的什么?问题是,这个是什么??处理函数似乎缺少一个结束括号。美元(这个)指的是什么?请提供您的全部代码,以便我们可以看到您试图实现的目标。谢谢