我有一个具有默认值的表单,它描述了应该进入该字段的内容(替换标签)。当用户聚焦一个领域时,这个函数被调用:
function clear_input(element)
{
element.value = "";
element.onfocus = null;
}
onfocus 设置为 null,因此如果用户在字段中放置某些内容并决定更改它,则不会删除他们的输入(因此只会删除一次)。现在,如果用户在没有输入任何数据的情况下移动到下一个字段,则使用此函数(称为 onblur)恢复默认值:
function restore_default(element)
{
if(element.value == '')
{
element.value = element.name.substring(0, 1).toUpperCase()
+ element.name.substring(1, element.name.length);
}
}
碰巧默认值是元素的名称,所以我没有添加 ID,而是操作了 name 属性。问题是,如果他们确实跳过了元素,那么 onfocus 事件会被 clear_input 取消,但永远不会恢复。
我添加了
element.onfocus = "javascript:clear_input(this);";
在 restore_default 函数中,但这不起作用。我该怎么做呢?