Javascript 提交表单时删除空字段
因此,我使用JavaScript制作了一个表单,允许用户输入他们想要的输入量,但我遇到了两个问题。第一个是,如果他们放了额外的字段而不使用它们,我会在另一边遇到错误,因为这些字段中没有输入,第二个是如果需要,他们无法返回并编辑输入。我对JavaScript比较陌生,所以我不知道如何修复它,但如果有人能够通过自动删除提交时未使用的任何空字段来帮助修复输入问题,并添加一个能够编辑输入的协议,我将非常感激。非常感谢您的帮助,代码如下 处理这个问题的方法很少,但它们涉及到用几种方法重新构造应用程序Javascript 提交表单时删除空字段,javascript,Javascript,因此,我使用JavaScript制作了一个表单,允许用户输入他们想要的输入量,但我遇到了两个问题。第一个是,如果他们放了额外的字段而不使用它们,我会在另一边遇到错误,因为这些字段中没有输入,第二个是如果需要,他们无法返回并编辑输入。我对JavaScript比较陌生,所以我不知道如何修复它,但如果有人能够通过自动删除提交时未使用的任何空字段来帮助修复输入问题,并添加一个能够编辑输入的协议,我将非常感激。非常感谢您的帮助,代码如下 处理这个问题的方法很少,但它们涉及到用几种方法重新构造应用程序 限制
在PHP中,在尝试使用请求变量之前,应该始终检查它们是否为空。foreach循环应该更像这样:
foreach ( $_POST['data']['address'] as $address ) {
if ( !empty( $address ) ) {
$addresses[$counter] = $address;
$counter++;
}
}
这将防止$addresses数组具有空字段
对于无法“返回”和编辑输入字段的用户,从代码示例中不清楚为什么会出现这种情况。如果您的意思是希望您的用户能够在服务器提交和处理数据后更改数据,那么只需对现有代码进行少量修改,您就无法做到这一点。您需要为前端和后端添加更多的功能。我只需检查是否有空字符串,如果是空字符串,
continue
。。。修剪$address
,以删除仅为空格的输入
foreach ($_POST['data']['address'] as $address){
if(empty(trim($address)) continue;
$addresses[$counter] = $address;
$counter++;
}
我将使用
$('[type=“submit”]')。单击(函数(e){})
和e.preventDefault()
停止表单提交,允许您检查空字段并删除()。但下面的答案是我在打字时发布的,这也将为你提供加强应用程序逻辑的方向。我将把这个问题分成两个问题。一个用于空输入问题,另一个用于保存输入数据。只是浪费了我的时间在删除的问题上写下这条评论:这是无效的document.setTimeout(document.getElementById('submit')。click(),10)代码>改为尝试document.forms[0].submit()
或至少window.setTimeout(函数(){document.getElementById('submit')。单击();},10)代码>