我的 jsfiddle 在这里- http://jsfiddle.net/hhimanshu/HVRLA/
需要
- 一旦输入文本,“创建”按钮应该启用
- 如果没有文本(文本长度 = 0),应该再次禁用“创建”按钮
更新
建议的解决方案适用于解决方案,但不适用于我在下拉列表中有表单。这是小提琴 - http://jsfiddle.net/hhimanshu/ukYek/
我的 jsfiddle 在这里- http://jsfiddle.net/hhimanshu/HVRLA/
需要
- 一旦输入文本,“创建”按钮应该启用
- 如果没有文本(文本长度 = 0),应该再次禁用“创建”按钮
更新
建议的解决方案适用于解决方案,但不适用于我在下拉列表中有表单。这是小提琴 - http://jsfiddle.net/hhimanshu/ukYek/
看起来您没有正确选择按钮,并且else
如果输入中没有字符(即用户退格他们输入的所有文本),您忘记放置以使其再次禁用。这有效:
$(function(){
var input = $('#new-list :input');
$(input).keyup(function(){
//alert($(input).val().length);
if ($(input).val().length > 0) {
//alert($(input).val().length);
$('#new-list button[type="submit"]').removeAttr('disabled');
}
else {
$('#new-list button[type="submit"]').attr('disabled',true);
}
});
});
jsFiddle:http: //jsfiddle.net/HVRLA/2/
另一个解决方案:http: //jsfiddle.net/HVRLA/5/
编辑:
正如您在此http://jsfiddle.net/hhimanshu/ukYek/fiddle下方的评论中所说的那样,它不起作用。您在输入选择器中遇到问题:
$(function(){
var input = $('#new-playlist :input');
$(input).live('keyup',function(){
//alert($(input).val().length);
if ($(input).val().length > 0) {
//alert($(input).val().length);
$('#create-playlist-button').removeAttr('disabled');
}
else {
$('#create-playlist-button').attr('disabled',true);
}
});
});
我认为这是您的代码中的问题-因为它们在您的 html 中没有new-list
id
var input = $('#new-list :input');
所以我把它改成这样:
var input = $('#new-playlist :input');
这是小提琴链接:http: //jsfiddle.net/ukYek/3/
一个工作示例:
$(function(){
var input = $('#new-playlist :input');
input.live('keyup',function(){
$('#create-playlist-button').attr('disabled',input.val().length==0);
});
});