你好,这是我的文件头中的内容:
function entsub(event)
{
if (event && event.which == 13)
write1();
else
return true;
}在身体里,我的形式是:
<form id="writeform" name="writeform">
Message: <br />
<textarea name="message" rows="3" id="message" style="width:90%;" onkeypress="return entsub(event)"></textarea>
<br />
<input name="send" type="button" id="send" value="Send" onclick="write1()" />
<span id="sent"></span>
<input type="reset" value="Reset" />
</form>我需要让它工作,当我在文本区中按enter时,它不会生成新行,但会发送它查看我的<input type="button">
但它不会起作用!它一直在做一条新的线..。现在使用IE8。
发布于 2009-10-27 02:38:58
使用keyCode而不是其中。
根据浏览器的不同,您需要阻止默认操作。查看IE的event.cancelBubble和event.returnValue,火狐的event.stopPropagation()和event.preventDefault()。
发布于 2009-10-27 02:37:45
我不确定write1()做了什么,但在满足条件时返回false将是明智的。
function entsub(event)
{
if (event && event.keyCode == 13) {
write1();
return false; //Return false to prevent default execution
//Some browsers use event.preventDefault() etc.
}else{
return true;
}
}发布于 2009-10-27 02:44:24
通常跨浏览器测试如下所示:
function entsub(e) {
if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {
write1();
}
return true;
}https://stackoverflow.com/questions/1626525
复制相似问题