繁体   English   中英

将PHP变量传递给Ajax函数将变量JS转换为PHP

[英]Passing PHP Variables To Ajax Functions Converting Variables JS To PHP

我在理解将信息从PHP传递到JS再返回的逻辑时遇到了真正的问题。 我整夜忙于此工作,如果有人可以向我展示如何将两个变量传递给ajax函数,我将不胜感激。

$ assetPath和$ count在下面注释的行中。 我已经尝试通过添加php来包括它们,但是在DOM中它显示为空字符串,但无法获得所需的结果。

var assetPath ='<?php echo $assetPath; ?>';
var num ='<?php echo $count; ?>';

(function($) {
 $(document).ready(function(){
$('.pager-top,.pager-bottom').bootpag({
    total: assetPath,
    page: 1,
    maxVisible: 5,
    leaps: true,
    firstLastUse: true,
    first: '←',
    last: '→',
    wrapClass: 'pagination',
    activeClass: 'active',
    disabledClass: 'disabled',
    nextClass: 'next',
    prevClass: 'prev',
    lastClass: 'last',
    firstClass: 'first'
}).on("page", function(event, num){
    $.ajax({
            url: "assetPath?pageNumber="+num,
            }).done(function(data) {
            $("#productResults").html( data );
             });
});
})( jQuery );
});

基本上,如果Php变量确实包含该值并且数据确实存在于其中,则通过使用这种代码var assetPath ='<?php echo $assetPath; ?>'; var assetPath ='<?php echo $assetPath; ?>'; 会没事的。 在测试js环境之前,请尝试回显从服务器端发送的变量页面,以查看数据是否存在。 对于ajax,请确保使用了用于将数据发送到服务器端端点的data属性,请参见以下示例:

var assetPath ='<?php echo $assetPath; ?>';
var num ='<?php echo $count; ?>';

$.ajax({
    type : 'POST',
    url: assetPath,//<-- is it this came from variable assetPath??
    data : {
     pageNumber : num,
    }
}).done(function(data) {
    $("#productResults").html( data );
});

在服务器端,假定assetpath持有值process.php

 $_POST['pageNumber']; //<-- retrieve data sent from ajax

如果您echo $_POST['pageNumber']; 在上面的代码之后,那么此值将在ajax的success / done块中提供:

.done(function(data) {
  // data is a data sent from server side
  $("#productResults").html( data );
});

只需将您的变量放入$(document).ready(function(){

(function($) {
 $(document).ready(function(){

var assetPath ='<?php echo $assetPath; ?>';
var num ='<?php echo $count; ?>';

$('.pager-top,.pager-bottom').bootpag({
    total: assetPath,
    page: 1,
    maxVisible: 5,
    leaps: true,
    firstLastUse: true,
    first: '←',
    last: '→',
    wrapClass: 'pagination',
    activeClass: 'active',
    disabledClass: 'disabled',
    nextClass: 'next',
    prevClass: 'prev',
    lastClass: 'last',
    firstClass: 'first'
}).on("page", function(event, num){
    $.ajax({
            url: "assetPath?pageNumber="+num,
            }).done(function(data) {
            $("#productResults").html( data );
             });
});
})( jQuery );
});

希望这会工作:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM