如何使用jquery ajax方法发送数据

时间:2014-05-28 07:24:31

标签: jquery ajax

我是ajax的新手并想知道如何使用jquery ajax方法发送数据,任何帮助都将非常感激。 这是我的代码:

<head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">  </script>
    <script>
        function show(str){
            $(document).ready(function(){
                $("#games").change(function(){
                    valcc = $("#games").val();
                    $("#div1").load("gg.php");
                });
            });
        }
    </script>
</head>

<body>
    <select id="games" name="games" onchange="show(this.value)">
        <option value="cricket">cricket</option>
        <option value="soccer">soccer</option>
        <option value="chess">chess</option>
    </select>
    <input type="button" name="button" value="button" id="button" />
    <div id="dd">Please select a Game</div>
    <div id="div1" style="width:300px; height:200px; border:1px solid  #999;"></div>

我需要将select选项的值发送到gg.php页面然后继续它。 请帮忙

3 个答案:

答案 0 :(得分:1)

调用选择输入的此函数onchange

function show(str)
{
$.ajax({
        type:'post',    // the type of request POST,GET etc
        url:'gg.php',   //  url to which request is send
        datatype:'html',  // datatype like html,text,json etc
        data:'games='+str, // pass the data; if there are multiple parameters you have to append it like data:'param1='+val1+'&param2='+val2 etc
        success:function(response)  // on success get response
        {

        }
    });
}

现在您可以处理通过 gg.php 中的ajax传递的数据。当您通过POST传递数据时,您必须以

的形式访问该值
$value=$_POST['games'];  // index as the parameter name passed through ajax

注意:无论你在gg.php中回应什么,都将作为对ajax函数的响应发送。

例如,

在ajax响应中,提醒响应。

function show(str)
{
   .............
   success:function(response)  // on success get response
    {
       alert(response);
    }
}

现在尝试回应gg.php中的游戏价值,

<?php
echo $value=$_POST['games'];
exit;
?>

现在你可以清楚地了解ajax的工作原理。

答案 1 :(得分:0)

我可以看到你正在使用jQuery,所以很容易

你可以这样做,首先你不需要onchange =&#34; show(this.value)&#34;。

$(function(){
   $("#games").on("change", function(){
      var gameData =  $(this).val();
      $.ajax({
        type: "POST",
        url: "gg.php",
        data: { game: gameData  }
        })
    .done(function( msg ) {
        alert( "Data Saved: " + msg );
    });
   });
});

在gg.php你可以通过$ _POST获得这个值[&#39;游戏&#39;];

有关AJAX访问http://api.jquery.com/jquery.ajax/

的更多信息

答案 2 :(得分:0)

您不必将doc ready块放在这样的函数中,您可以使用$.get() ajax方法发送值并获取响应。试试这个:

$(document).ready(function(){
   $("#games").change(function(){
       var valcc = $(this).val(); // get the current value of selected
       $.get("gg.php", {data: valcc}, function(resp){ // pass that in a object
           $("#div1").html(resp); // place the comming response html
       });
   });
});

您可以取出此内联脚本onchange="show(this.value)"