尝试在表单出现时忽略字段的默认值(使用字段提示进行访问)
通过它的验证。
验证是在javascript:
if (giftCardNumber >= 'xxxxxxxxxxxxxxx' && giftCardNumber <= 'xxxxxxxxxxxxxxxxx' ) {
giftAlert (incdpy_msg_065,"frmGCD_"+formIndex+"_Number");
if ((typeof TeaLeaf != "undefined") && (typeof TeaLeaf.Client != "undefined") && (typeof TeaLeaf.Client.tlAddEvent != "undefined") ) { // Tealeaf Include
var nVO = { ErrorMessage :incdpy_msg_065}
var subtype="CustomErrorMsg";
TeaLeaf.Event.tlAddCustomEvent(subtype, nVO);
}
return false;
}
我认为这是一个相当简单的行 - 如果(giftCardnumber ===“输入礼品卡”)......
xxx是出于安全原因。
或者我可以清除焦点和提交时的所有默认值吗?
答案 0 :(得分:0)
是 - 如果您知道默认值是什么,并且可以对其进行验证,这是最简单的方法。
答案 1 :(得分:0)
你基本上需要测试该值是否正确。然后,这取决于您是否要阻止提交表单或向服务器发送空值。
您是否尝试过并遇到问题?
编辑: 正如您所说,清除焦点上的值会很好(对于用户而言)但不够,因为用户仍然可以在不“触摸”该字段的情况下提交表单。在提交中你可以做到
if(giftCardNumber === "default value") {
giftCardNumberField.value = "";
}
如果您有权访问该字段,则只需向服务器发送空值即可。这也有令人讨厌的习惯,即将字段留空(如果页面因为表单无效或因为你通过ajax执行而未提交页面,则会很难看。)
实际上我不知道这是什么最好的做法。查看ext文档,我看到如果给出一个html名称,他们的Textfield将只提交其空文本。
答案 2 :(得分:0)
您只需检查 defaultValue 属性:
if (element.value == element.defaultValue) {
// it has its default value
} else {
// it has some value other than its default
}
通常的方法是使用 onfocus ,如果value == defaultValue
,则将值设置为''(空字符串)。然后 onblur ,执行相反的操作(例如value == ''
,设置为 defaultValue )。