Javascript 未设置值时删除输入
我得到了一个PHP创建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(); } } 我上面写的函数根本不起作用。没有输入被删除,
”的列表代码>来自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] . '">';
}