電子書籍の厳選無料作品が豊富!

画面で入力行が1行のとき、入力して、Enterキーを押すとsubmitされます。
入力行が2行あるときは、submitされません。

プログラムの中には、OnKeyboadの記述はありません。

よろしくご教授ください。

A 回答 (2件)

フォームのテキストボックスのエンターは原則サブミットですね


2行あるというのはテキストエリアのことでしょうか?
javascriptで制御するってことでよろしいですね?

<script>
try{
document.addEventListener('keypress',function(e){pressfunc(e)},true);
}catch(e){
document.attachEvent('onkeypress',function(e){pressfunc(e)});
}
function pressfunc(e){
var t = (e.srcElement || e.target);
var v=t.value;
if(t.nodeName!="INPUT" && t.nodeName!="SELECT") return false;
if(e.keyCode==13){
if(e.preventDefault)e.preventDefault(); //基本
else e.returnValue = false; //IE
}
}
</script>

<form>
<input type="text" name="n" vakue="xxx">
<textarea name="t">yyy</textarea>
<input type="submit" vakue="go">
</form>
    • good
    • 0
この回答へのお礼

さっそくのご回答ありがとうございます。

試してみます。

お礼日時:2011/09/14 10:32

それで、何が聞きたいのでしょうか?

この回答への補足

説明不足で申し訳ありません。

なぜ、1行表示のときだけsubmitされるのか教えていただきたいと思います。
エンターきーを押してもsubmitされないように制御する方法も教えていただきたいと思います。

よろしくお願いします。

補足日時:2011/09/14 10:29
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!