Javascript 在提交时删除html元素
我是JavaScript新手。有人能给我举个例子,如何在提交时删除空表单元素吗Javascript 在提交时删除html元素,javascript,Javascript,我是JavaScript新手。有人能给我举个例子,如何在提交时删除空表单元素吗 <form action='...' method='post' id='mySubmitForm'> <input type='text' name='name'> <input type='text' name='email'> <input type='text' name='phoneNumber'> <input
<form action='...' method='post' id='mySubmitForm'>
<input type='text' name='name'>
<input type='text' name='email'>
<input type='text' name='phoneNumber'>
<input type='submit' value='Save'>
</form>
是否有一种简单的方法可以使用JavaScript检查表单是否为空,并在提交表单之前将其删除(如果为空)?在提交表单之前,浏览器会抛出一个
submit
事件,您可以使用该事件
参考:
如果不希望提交表单,则返回false
,如果希望提交表单,则返回true
。在这种情况下,删除/添加相应的额外输入
function validate(formName)
{
var form = document.forms[formName];
//validate, and do stuff
//remove items that you want with a call like this
form.removeChild(document.getElementById(id));
form.submit();
}
如果这是为了验证,那么您实际上应该在服务器端而不是客户端进行验证
您可以这样调用此函数:
<input type=BUTTON onClick="validate('myForm')"/>
您可以使用,这可能是最简单的方法
$(document).ready(function() {
$('#.mySubmitForm').submit(function(event) {
event.preventDefault();
$('input[type=text]').each(function() {
var inputElement = $(this);
inputElement.val() == "" ? inputElement.remove() : null;
});
$(this).trigger('submit');
});
});
我没有测试该代码,但它应该在提交之前删除空表单值,然后删除它们
function onsubmit() {
[].forEach.call(document.querySelectorAll('#mySubmitForm input[type=text]'), function(col) {
if(col.value=='') col.disabled = 'disabled';
});
}
和
onsubmit=“onsubmit()”
标记中的通过javaScript进行检查很容易,但我建议您为表单元素指定一个id
属性
您可以通过以下方式进行检查
var email = document.getElementById('email').value;
您可以从表单中删除电子邮件
,如下所示
form.removeChild(document.getElementById('email'));
form.submit();
您可以查看更多详细信息。您具体想要什么?是否要在表单提交之前禁用空字段?在大多数情况下,判断表单提交后字段是否为空更有意义。使用php/asp或任何您用来处理输入的服务器端语言。PS禁用输入类似于将其从DOM中删除(即禁用输入不随get/post一起提交),为什么preventDefault()
?