1

更新しました

エラー私はより多くのチュートリアルを見ようとしましたが、最初に $.get() を使用することにしました.

これがスクリプトであり、未定義の結果が得られることを除いて、正しく機能すると思います

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Display Json</title>
<script src="../_js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
    $(document).ready(function()
    {
        $('#jsonButton').click(function()
        {
            var data = ''
            $.get('getJson.php', data, response);
        });//end click
    });//end ready

    function response(data)
    {
        $('#display').prepend('<p>' + data.name + data.phone + '</p>');
    }
</script>
<body>
    <div id="display">

            <input type="button" id="jsonButton" value="getJson!" />

    </div>
</body>
</html>

これは単純な JSON オブジェクトを返す getJson.php 単純な php スクリプトです。

$data['name'] = 'username';
$data['phone'] = '08989808089';

header('Content-Type: application/json');
echo json_encode($data);

「getJson」ボタンをクリックすると、未定義と表示されます

4

3 に答える 3

3

それはあなたのセレクターが間違っているからです

$('submit').click(function()
//-^^^^^----here

そのはず

 $('input[name="submitButton"]').click(function(){
  ....  
}

または、ボタンに ID を指定し、ID セレクターを使用します#

 <input type="submit" name="submitButton" value="getJson!" id="getjson"/>

  $('#getjson').click(function(){
   ......

または、使用できます

$('input:submit').click(function(){ 
  .....
});

更新しました

未定義の場合は、コールバック関数を呼び出すことができます.....

$.get('getJson.php', data, function(data){
    $('#display').prepend('<p>' + data.name + data.phone + '</p>');
});
于 2013-05-17T09:21:23.183 に答える
0

クリックイベントをバインドするには、正しいボタンを選択する必要があります。

$('input:submit').click(function(){  });
于 2013-05-17T09:21:42.823 に答える
0

セレクターが正しいかどうかは 100% 確信が持てません。ボタンにIDを付けて使用します。

<script type="text/javascript">
    $(document).ready(function()
    {
        $('#mybutton').click(function()
        {
            $.ajax(
            {
                type: 'GET',
                url: 'getJson.php',
                dataType: 'json',
                success: function(jsonData)
                {
                    $('#display').prepend('<p>' + jsonData.name + '  ' + jsonData.phone + '</p>');
                }
            });//end ajax
            return false;
        });//end click
    });//end ready

</script>
    <body>
        <div id="display">

                <input id="mybutton" type="button" name="submitButton" value="getJson!" />

        </div>
    </body>

ここで適切なjqueryセレクターについて読んでください

http://www.w3schools.com/jquery/jquery_ref_selectors.asp

クリック イベントをそのボタンにアタッチするために使用できるさまざまなセレクターがあります。

編集:入力のタイプをボタンにも変更します...送信はフォーム用です

于 2013-05-17T09:21:54.370 に答える