[英]What can I do to keep default text from being submitted in a web form if a user does not enter information?
我有一个要求输入名字/姓氏,电子邮件和电话的表格。 我不想使用“占位符”,因为IE缺乏这种能力。 我已经尝试了很多方法,但是对脚本编码的了解还不够,因此我无法在有人提交信息时如何将默认文本从字段中剥离出来。
我需要找到一种方法,使下面的代码仅向我发送键入字段的数据,而不向我发送“电话”等格式的txt
<form action="{SUBMIT_FORM}" method="post">
<input type="text" class="input-field" onblur="if (this.value == '') {this.value = '*First Name : (Required Field)';}" onfocus="if (this.value == '*First Name : (Required Field)') {this.value = '';}" name="{lead_first_name}" id="{lead_first_name}" value="*First Name : (Required Field)"/>
<input type="text" class="input-field" onblur="if (this.value == '') {this.value = 'Last Name :';}" onfocus="if (this.value == 'Last Name :') {this.value = '';}" name="{lead_last_name}" id="{lead_last_name}" value="Last Name :"/>
<input type="text" class="input-field" onblur="if (this.value == '') {this.value = '*Email : (Required Field)';}" onfocus="if (this.value == '*Email : (Required Field)') {this.value = '';}" name="{lead_email}" id="{lead_email}" value="*Email : (Required Field)"/>
<input type="text" class="input-field" onblur="if (this.value == '') {this.value = 'Phone :';}" onfocus="if (this.value == 'Phone :') {this.value = '';}" name="{lead_home_phone}" id="{lead_home_phone}" value="Phone :"/>
<input type="submit" class="sbt-btn" value="Submit" onclick="{SUBMIT_SCRIPT}" />
{VALIDATE_SCRIPT}
</form>
<small>*We promise to never share, rent or sale your personal information.</small>
在表单验证器中,如果表单包含不需要提交的占位符数据,则可以使用preventDefault()
阻止表单提交。
这是我在简单的文本输入上执行的操作。 HTML:
<form id="myemailform">
<input class="text email" type="text" name="email" value="Enter e-mail address"/>
<input type="submit" value="Submit">
</form
jQuery:
<script src="http://code.jquery.com/jquery-1.8.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$('input.text').each(function() {
$.data(this, 'default', this.value);
}).focus(function() {
if (!$.data(this, 'edited')) {
this.value = "";
}
}).change(function() {
$.data(this, 'edited', this.value != "");
}).blur(function() {
if (!$.data(this, 'edited')) {
this.value = $.data(this, 'default');
}
});
$('#myemailform').submit(function() {
if($(".email").val() == "Enter e-mail address") {$(".email").val("");}
return true;
});
});
</script>
javascript会查找input.text元素,并删除焦点,模糊或更改上的占位符文本。 如果在提交表单时保留了占位符文本,则它将在提交前先删除占位符文本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.