1

こんにちは、フォーム送信に関する onclick 属性の奇妙な動作に遭遇しました。

サーバー上のページ:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head lang="en-us" >
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title>Return Form Example</title>
    <script type="text/javascript">
        function doSomething(){
            alert("hey");
            return false;
        }
    </script>
</head>

<body>
    <form action="submit.php" method="post">
        <input type="submit" onclick="return doSomething()" value="click me!">
    </form>
</body>
</html>

この例では、サーバー上で実行して、送信ボタンをクリックすると、ちょっとというアラートが表示され、現在のページにとどまります。ただし、この同じ例を jsfiddle に設定しようとすると、フォームが送信されたことを意味する 404 エラーが発生します。なぜこれが起こるのか分かりません。

これは、サーバーで動作を複製しようとしているjsfiddleです。

jsfiddle: http://jsfiddle.net/46XSv/

4

2 に答える 2

2

no wrap - in <head>「Javascript コードをラップせず、セクションに配置する」 オプション「 」をチェックします。

no wrap - in <head>「フレームワークと拡張機能」で「 」を選択します

このページの下部に各オプションの説明があります: http://doc.jsfiddle.net/basic/introduction.html

また、次のように、return ステートメントの最後にセミコロンを含めることをお勧めします。

<input type="submit" onclick="return doSomething();" value="click me!">
于 2013-07-21T20:47:18.477 に答える
1

要素ではなく要素で使用する必要がonsubmitあります。正しく動作します。<form>onclick<input>

于 2013-07-21T20:40:37.720 に答える