Javascript 未设置值时删除输入

Javascript 未设置值时删除输入,javascript,php,jquery,html,mysql,Javascript,Php,Jquery,Html,Mysql,我得到了一个PHP创建”的列表来自mySQL。有时数据库表中的字段是空的,因此输入看起来就像这样:所以有一个值标记,但没有任何值。 我试图做的只是删除空输入。 我尝试使用以下代码: function clearEmpty(){ var input = $('.plannerlist input').val(); if(input < 0){ $('.plannerlist input').remove(); } } 我上面写的函数根本不起作用。没有输入被删除,

我得到了一个PHP创建
”的列表来自mySQL。有时数据库表中的字段是空的,因此输入看起来就像这样:
所以有一个值标记,但没有任何值。
我试图做的只是删除空输入。
我尝试使用以下代码:

function clearEmpty(){
  var input = $('.plannerlist input').val();
  if(input < 0){
    $('.plannerlist input').remove();
  }    
}
我上面写的函数根本不起作用。没有输入被删除,没有控制台错误,什么都没有。。。 有什么问题吗

这是我的PHP(我知道这是一个混乱,但它的工作;):

$('.plannerlist input')
返回一个输入数组

您需要在其上循环并找到
val()=''
所在的元素

var输入=$('.plannerlist输入');
对于(变量i=0;i
$('.plannerlist input')
返回一个输入数组

您需要在其上循环并找到
val()=''
所在的元素

var输入=$('.plannerlist输入');
对于(变量i=0;i
//在您的php foreach中,您可以这样做吗

foreach ($all_property as $item) {
 if($row[$item] != NULL || $row[$item] != '')
 {
   echo '<input type="text" readonly value="' . $row[$item] . '">'; 
 }
foreach($all_属性作为$item){
如果($row[$item]!=NULL | |$row[$item]!=“”)
{
回声';
}

}//在您的php foreach中,您可以这样做吗

foreach ($all_property as $item) {
 if($row[$item] != NULL || $row[$item] != '')
 {
   echo '<input type="text" readonly value="' . $row[$item] . '">'; 
 }
foreach($all_属性作为$item){
如果($row[$item]!=NULL | |$row[$item]!=“”)
{
回声';
}


}

$('.plannerlist input')
返回一个列表,您不能只
.val()
一个列表。您必须获取列表中的所有项目。@VitaliStrimbanu啊,没错……您尝试的解决方案的实际目的是什么?我觉得有比用javascript删除输入更好的处理方法。由于您的解决方案似乎是针对空字段的某种解决方法,请阅读并思考您的问题。@TobiasGlaus我正试图提供帮助。但有一个问题可能更容易帮助你解决问题,而不是你试图解决的问题。看,如果你问“我怎样才能更换汽车的电池”,每个人都会试图解释。如果最后你的电池没有问题,但是你的燃料是空的,那么最好问:“我的车不能启动,怎么解决这个问题?”——但是如果不知道你的车不能启动,没有人会想出解决办法。(这个愚蠢的例子怪我:P)@dognose好吧,我明白了;)当我发布下一个问题时,请记住。
$('.plannerlist input')
返回一个列表,您不能只
.val()
一个列表。您必须获取列表中的所有项目。@VitaliStrimbanu啊,没错……您尝试的解决方案的实际目的是什么?我觉得有比用javascript删除输入更好的处理方法。由于您的解决方案似乎是针对空字段的某种解决方法,请阅读并思考您的问题。@TobiasGlaus我正试图提供帮助。但有一个问题可能更容易帮助你解决问题,而不是你试图解决的问题。看,如果你问“我怎样才能更换汽车的电池”,每个人都会试图解释。如果最后你的电池没有问题,但是你的燃料是空的,那么最好问:“我的车不能启动,怎么解决这个问题?”——但是如果不知道你的车不能启动,没有人会想出解决办法。(这个愚蠢的例子怪我:P)@dognose好吧,我明白了;)我会在发布下一个问题时记住的。谢谢你的回答。不幸的是,这对我也不起作用。我已经修好了。它现在可以工作了吗?不,它不能:/I我必须在开始时定义变量输入,对吗?(
var inputs=$('.plannerlist input').val();
)省去
.val()
。仍然不起作用:/您可以自己在网站上查看它:滑动滑块后,在页面底部。您可以选择一些选项卡,然后内容就会显示出来(取自my mySQL表),谢谢您的回答。不幸的是,这对我也不起作用。我已经修好了。它现在可以工作了吗?不,它不能:/I我必须在开始时定义变量输入,对吗?(
var inputs=$('.plannerlist input').val();
)省去
.val()
。仍然不起作用:/您可以自己在网站上查看它:滑动滑块后,在页面底部。您可以选择一些选项卡,然后显示内容(取自my mySQL表)
&&
-应该是
($x!=null | |$x!='')
始终为
true
,因为它不能同时为
null
'
,因此一个条件始终匹配。:-)谢谢Gian!工作完美@狗鼻子你的评论是什么意思?对我来说就是这样。@TobiasGlaus这个问题很难解释:当只使用
时,PHP做了一些“自动魔术”渲染
'
null
相等=。因此,即使这在布尔语言中是不正确的,这也是可行的。请参阅此片段:与
一起进行严格比较的案例,而不是与
进行非严格比较的案例,将是正确的解决方案。试想一下:如果元素既不是空的,也不是空的,那么您希望
隐藏该元素-因此您需要检查两个条件,因此您需要“AND”。如果PHP不能做到这一点,它的“魔力”将在任何时候显示内容,(1/2)(2/2)请参见概述为“其他或”的示例。无论是
'
还是
null
都会显示内容。@GianTomakin empty是可以的-只是说您的示例是错误的布尔逻辑。它在PHP中工作,因为
null=''
,但它的错误永远不会减少:-)通常您的代码会显示空字符串,因为当第一部分为真时,第二部分甚至不会被计算
var inputs = $('.plannerlist input');
for (var i = 0; i < inputs.length; i++) {
    var input = inputs[i];
    if ($(input).val() == '') {
        $(input).remove();
    }
}
foreach ($all_property as $item) {
 if($row[$item] != NULL || $row[$item] != '')
 {
   echo '<input type="text" readonly value="' . $row[$item] . '">'; 
 }