jQuery Ajax从PHP获取变量并将值设置为Textbox

时间:2013-11-16 02:46:11

标签: php jquery ajax

如何将PHP变量设置为Ajax?

示例我有这样的PHP代码(update_prod_rev.php):

<?php
$start_date1 = $_POST['start_date1'];
$end_date1 = $_POST['end_date1'];
?>

和我的jQuery Ajax:

$.ajax(
{
    'data' : $('form').serialize(),
    'type' : 'POST',
    'url' : 'update_prod_rev.php',
    'success' : function(data)
    {
        alert.html(data).fadeIn().delay(2000).fadeOut('slow');  
$("#a").val(data.value);
}
});

现在我想将该变量设置为文本框。

<input type="text" name="a" id="a"/>
<input type="text" name="b" id="b"/>

1 个答案:

答案 0 :(得分:0)

您的PHP代码似乎没有回显/返回JSON格式化数据。

这是PHP和JQuery的一个例子。我正在使用getJSON,但你可以用ajax方法和一些参数做同样的事情。

现在,我们用来从服务器获取JSON数据的一些jquery。

var title = '.....'
$.getJSON('getActivite.php?title=' + title, null,
        function(data){
            $("#currentId").val(data.ID);
            $("#nomActivite").val(data.Nom);
            $("#Description").val(data.Description);
            $("#DateEvent").val(data.Date);
});     

如您所见,您从服务器回调函数接收数据变量。此变量包含JSON数据。

在PHP方面,我们有

<?php
    header('Content-Type: application/json');

    mysql_connect("localhost","root") or die (" NOPE . [" . mysql_error() . "]");
    mysql_select_db("garderie");


    $title  = $_GET["title"]; // we received this from the json call


    $query = "  select a.ActiviteID as ActiviteID  , rtrim(a.Nom) as Nom, a.Description from activites a inner join .....' ";


    $result = mysql_query($query);       
    $ligne  = mysql_fetch_array($result);

    $data = array(
        'ID'            => $ligne["ActiviteID"],
        'Nom'           => $ligne["Nom"],
        'Description'   => $ligne["Description"],
        'Date'          => $date
    );

    mysql_close();

    echo (json_encode($data));
?>