jQuery bootgrid:将PHP变量传递给AJAX

问题描述:

I am using the jquery bootgrid and using AJAX for the server side processing. I am trying to pass a PHP variable with AJAX to the processing script, however, I can't get it working to pass the PHP variable to the AJAX script.

I tried to use the following code and add a PHP variable as following:

requestHandler: function (request) {
request.id = "<?php echo  $id; ?>";
return request;
}

The response array then looks as following:

Array
(
[current] => 1
[rowCount] => 10
[searchPhrase] => 
[id] => <?php echo  $id; ?>
)

However, whatever I try, I don' get it working.

I am stuck at this point, what am I doing wrong?

If you are seeing the string "<?php echo $id; ?>" in your output instead of the evaluated expected output ( for example a number like 100 ) this is a clue that whatever document containing your PHP code (<?php echo $id; ?>) is in fact not being parsed by PHP itself. Do you have the Javascript code you provided in a document that can be parsed by PHP on your server or in an external Javascript file? It needs to be the former rather than the latter.

This request.id = "<?php echo $id; ?>"; is allowed only in PHP script.

You can (in php script):

<script>
  var storage = {"requestId": "<?php echo  $id; ?>"};
</script>

and

requestHandler: function (request) {
request.id = storage.requestId;
return request;
}