使用CKEDITOR并尝试在内容长度为0时禁用提交按钮,然后在键盘上,再次检查该功能并查看该值是否大于1,如果是,则将提交按钮设置为启用。
所以我们有这个:
CKEDITOR.on('instanceReady', function(){
disableNewPost();
var e = CKEDITOR.instances['newpost'];
e.on( 'keyup', function() {
disableNewPost();
});
});
function disableNewPost() {
var value = CKEDITOR.instances['newpost'].getData();
var valueL = value.length
if ($(valueL) < 1) {
$(".addnewpostbtn").prop("disabled", true);
} else if ($(valueL) > 0) {
$(".addnewpostbtn").prop("disabled", false);
}
}
这会正确获取值和长度,如果设置了警报(值)或警报(valueL),它会显示它所显示的内容。
然而if语句似乎不起作用。
Onpage load,CKEDITOR没有内容,警报显示其长度为0。
但是使用上面的if语句它不会禁用该按钮。我已经尝试了所有可以想到的变化(==''/ == 0)等等。但没有运气。
如果函数只包含:
$(".addnewpostbtn").prop("disabled", true);
然后它会禁用。
任何帮助?
答案 0 :(得分:5)
您无需调用$
来评估普通变量。它应该是:
if (valueL < 1) {
$(".addnewpostbtn").prop("disabled", true);
} else {
$(".addnewpostbtn").prop("disabled", false);
}
或更简单:
$(".addnewpostbtn").prop("disabled", valueL === 0);