Javascript 提交时隐藏输入空输入

Javascript 提交时隐藏输入空输入,javascript,Javascript,我试图在提交$\u GET时隐藏空字段 我的代码看起来像这样,但不起作用。任何关于这一逻辑的帮助都将是巨大的 <script> $(submit).click(function(){ if(input.value.length == 0) input.style.visibility = "hidden"; }); </script> $(提交)。单击(函数(){ if(input.value.length==0) input.style.visibi

我试图在提交$\u GET时隐藏空字段

我的代码看起来像这样,但不起作用。任何关于这一逻辑的帮助都将是巨大的

<script>
$(submit).click(function(){
if(input.value.length == 0)
    input.style.visibility = "hidden";
    });
</script>

$(提交)。单击(函数(){
if(input.value.length==0)
input.style.visibility=“隐藏”;
});
编辑: 这是我提交表单的按钮-

<input name="SaveBtn" type="submit" id="SaveBtn" 
formaction="update1Profile.php?id="<?php echo htmlentities($_SERVER["PHP_SELF"]) ?>
<?php echo $_GET['source_ID'] ?>" formmethod="GET" value="Save">
“formmethod=“GET”value=“Save”>

使用
显示
而不是
可见性
,假设您在该代码的某个地方定义了
输入

input.style.display = "none";

这段代码可能会在浏览器控制台中给您带来错误;最好先检查一下

你需要找到
元素,仅仅提到“输入”这个词是不行的。你的“提交”元素也是一样,不管是什么。这可能看起来像:

$('form').submit(function() {
  $(this).find('input').filter(function() { return this.value == ''; }).css('visibility', 'hidden');
});
编辑-在下面的评论中,OP现在提到他希望避免提交空输入。如果是这种情况,则使其不可见肯定不会这样做。相反(或另外),有必要将字段标记为“禁用”:


这里是什么
submit
。这是指html元素吗?发布您的html代码。这是客户端代码。一旦提交页面,此代码设置的任何状态都将在页面刷新时丢失。@David表单提交可能会触发ajax调用,而不会导致页面被覆盖。submit是e提交表单的输入按钮的“类型”。我使用的实际输入按钮名为“saveBTN”,其书写方式如下:“formmethod=“GET”value=“Save”>@MizAkita您使用的是“提交”和“输入”,就像它们是变量一样。您发布的代码中没有证据表明它们确实存在。可见性和显示是两个不同的东西,这可能会导致元素移动的意外行为。我尝试了以下方法:$('#LName')。查找('input')。筛选(函数(){return LName.value='''';})。css('Visibility','hidden');但它现在似乎忽略了所有的更新,并且没有错误进入我的控制台。六羟甲基三聚氰胺六甲醚。。。$(this)实际上是$('#Lname'),它不应该是
Lname.value=''它应该是
this.value=''如我在回答中所写。这似乎可行,但它仍然会向我的数据库发送一个空字段,删除已经存在的条目!任何完全忽略$\u GET if empty?@MizAkita使字段不可见的方法都不会阻止提交该字段。如果你想这样做,你必须禁用该字段。嗯。。。只是尝试了一下,它没有提交表单。仅当LName字段中当前存在某些内容时。如果该区域为空,则忽略提交。必须有办法做到这一点。我所要做的就是不要提交空字段!我想跳过将这些字段发布到DB。
$('form').submit(function() {
  $(this).find('input')
    .filter(function() { return this.value == ''; })
    .prop('disabled', true)
    .css('visibility', 'hidden');
});