1

私はPHPでjQueryAJAXを使用する方法を学ぼうとしています。

私の問題は、以外の要素を選択するときはいつでもdocument、何も機能しないように見えることです。私がしたいのは、送信ボタンを押した後にページがロードされないようにすることです。

$の代わりにjQueryを使用してみましたが、まだうまくいきません。

正直なところ、自分が何をしているのかわからないので、この解決策を何時間も探してみました。

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script>
    $("p").click(function() { 
         alert('test');
    });
    $("form").submit(function() { 
         alert('test');
         return false;
    });
</script>
<title>Insert title here</title>
</head>
<body>
    <form action="process.php" method="post">
        Inputs:<br />
        <textarea rows="15" cols="60" id="input" name="input">Some text...
        </textarea><br /><br />
        Start:
        <input type="text" id="start" name="start" />
        End:
        <input type="text" id="end" name="end" /><br />
        <input type="submit" id="submit" name="submit" value="Submit">
    </form>
    <p id="output">Output: Some Random Text</p>
</body>
</html>
4

2 に答える 2

5

ページの残りの部分が読み込まれる前にJavaScriptが実行されています。これを修正するには、スクリプトをページの下部(終了タグの前)に移動するか、jQueryメソッド</body>を使用してイベントハンドラーをDOMreadyイベントにバインドします。.ready()

$(document).ready(function () {
    // Your code in here
});

//or, use the shorthand form:

$(function () {
    // Your code here
});

サイドノート

$の代わりにjQueryを使用してみましたが、まだうまくいきません。

jQueryとの間に違いはありません$。どちらも、同じオブジェクトへの参照を保持する単なる識別子です。$その識別子も必要とするjQueryに加えて別のライブラリ(PrototypeJSなど)を使用している場合を除いて、通常は(短いという理由だけで)使用する方が簡単です。その場合、メソッドで$識別子の制御を放棄するようにjQueryに指示できます。.noConflict()

于 2012-10-07T08:25:48.433 に答える
2

ロードする前に要素を選択しようとしています。ドキュメントが読み込まれたら、 documentreadyイベントを使用してコードを実行します。

<script>
    $(function()
    {
        $("p").click(function() { 
             alert('test');
        });
        $("form").submit(function() { 
             alert('test');
             return false;
        });
    });
</script>
于 2012-10-07T08:25:57.677 に答える