0

我正在尝试创建一个允许用户生成 CSS 代码的工具。目前我正在处理输入 - 当用户将文本输入留空时,我希望出现一条消息。我目前拥有的代码似乎不起作用,有什么想法吗?

$("#btn-css").click(function() {
    if( $('input').attr(value) = "" ) {
      $('#output').append('All boxes must be completed');
    } else {
      $('.preview').attr('style', 'box-shadow: ' + $("#h-value").val() + 'px ' + $("#v-value").val() + 'px ' + $("#blur").val() + 'px ' + $("#spread").val() + 'px #' + $("#colour").val() + ';');
      $('#output').append('box-shadow: ' + $("#h-value").val() + 'px ' + $("#v-value").val() + 'px ' + $("#blur").val() + 'px ' + $("#spread").val() + 'px #' + $("#colour").val() + ';');
    }
    });
4

4 回答 4

1

使用.val()..val()做你提到的完全相同的事情..

if( $('input').val() == "" ) {

检查所有输入..

var inputVallength=$('input').filter(function(){
       return this.value==""
   }).length;

if(inputVallength == 0 || inputVallength < $('input').length){
 $('#output').append('All boxes must be completed');  
}
于 2013-07-23T21:05:41.590 回答
1

怎么样,它将选择页面上的所有文本输入,然后将它们过滤为空的。

$("#btn-css").click(function() {
    var emptyInputs = $('input:text').filter(function() { return this.value == ""; });
    if (emptyInputs.length === 0) {
        // Everything filled in

    } else {
        $('#output').append('All boxes must be completed');
    }

});

您可能还想这样做:

var emptyInputs = $('input:text').filter(function() { return $.trim(this.value) == ""; });

这也将拾取只有空格的文本输入。

于 2013-07-23T21:07:00.080 回答
0

做就是了

$(':input').each(function(){
    if(!$(this).val()){
        //logic
    }
});

快速小提琴

于 2013-07-23T21:06:31.887 回答
0
$('input').attr(value)

这将选择整个页面上的所有输入元素。

还有@Mike Christensen 所说的,你至少需要两个等号。

于 2013-07-23T21:02:42.233 回答