如何从javascript向php发送变量并将结果返回给JS

时间:2012-06-19 01:59:59

标签: php javascript jquery

我有这段代码。

var book = document.getElementById('txtBook').value;
switch(book.toUpperCase())
    {
        case "GEN": var bk = "101"; break;
        case "EXO": var bk = "101"; break;
        case "LEV": var bk = "101"; break;
        case "DEU": var bk = "102"; break;
        ... and so on...
    }

我想用数据库查询替换switch。由于我在这里搜索,我不能直接从JS那里学习,我需要将它传递给php Variable。

我想知道如何将我的var book传递给php页面,例如getbook.php

然后我将在php端进行查询。我希望将结果返回给我的JS进行进一步处理。

我更喜欢没有页面刷新的方法。

由于

2 个答案:

答案 0 :(得分:1)

您需要使用ajax

$.get('getbook.php', {book: $('#txtBook').val()}, function(data) {
  // here you get your data and deal it 
});

答案 1 :(得分:0)

最简单的方法是应用ajax。

服务脚本(getbook.php):

$bookId = $_POST['book'];
//do some search stuff
$rows = getBookInfo($bookId);
$result = array('searchResult' => $rows);

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

客户端脚本(记住包含jsery的js):

postData = {book: bookId};
$.ajax({
     type: 'POST',
     url: '/getbook.php',
     data: postData,
     dataType: 'JSON',
     success: function (jsonObj) {
        //use jsonObj.serachResult as array
     }
   });