私はウェブサイトで作業していて、この問題が発生していたので、可能な限り単純化しました。
index.html:
<html>
<head></head>
<body>
<script type="text/javascript" src="test.js"></script>
<form id="myForm" onsubmit="log(this.id)">
<input name="id">
</form>
</body>
</html>
test.js:
function log(str){
console.log("str=" + str);
}
フォームを送信すると、次のように表示されます。
str=[オブジェクト HTMLInputElement]
name の値を「id」以外に変更すると、予想される
str=マイフォーム
コード内の「name」と「id」のすべてのインスタンスを切り替えると、まったく同じ動作になります。言い換えれば、それはどちらの属性の特定の制限でもないように思われますが、より一般的なものです。
OS X 10.8 で MAMP を実行しています。Firefox 22.0 および Chrome ver. 28.
前もって感謝します