如何解决这个onclick尴尬?

时间:2011-08-24 17:21:50

标签: javascript onclick onblur

http://jsfiddle.net/wmuYq/

我想消除尴尬:用户必须两次点击提交按钮才能提交文字。

如果只需点击一下,我该怎么办?

4 个答案:

答案 0 :(得分:2)

您可以设置超时:http://jsfiddle.net/wmuYq/1/

document.getElementById("text1").onblur = function () {
   var target = this;
   setTimeout( function () {
        target.style.height='36px';
   }, 250);
}

答案 1 :(得分:1)

您可以使用提交按钮上的onmousedown事件提交表单:

document.getElementById("submitButton").onmousedown = function() {
   this.form.submit();
}

要使上述示例正常工作,您需要为该按钮指定一个ID。此外,您需要将提交按钮的名称从“提交”更改为其他名称,否则它将覆盖submit元素的form属性。

这是有效的,因为在mousedown触发blur事件之前,按钮会触发textarea事件。

这是一个有效的example

答案 2 :(得分:0)

嗯,有一件事你没有形式,所以我不确定它是如何提交的。

将代码包装在表单中并添加操作,它应该可以正常工作: - )

答案 3 :(得分:0)

这可能有用。 未测试

onblur移除textarea个活动,并将其放在onclick上的input

onclick="document.getElementById('text1').style.height='36px'"

修改小提琴:http://jsfiddle.net/jasongennaro/wmuYq/2/