使用PHP / jQuery UI将额外数据值发送到ajax.php文件

时间:2010-01-06 19:55:00

标签: php jquery-plugins

我正在尝试使用jQuery向Ajax post函数发送额外的$php_var。 在第一个$.ajax我有:

    $('.ui-icon-closethick').click(function(e) {
    e.preventDefault();
    var parent = $(this).parent().parent();
    $.ajax({
        type: "POST",
        url: "server_items_reorder.php",
        data: 'id=' + parent.attr('id'),

        success: function() {
            parent.slideUp(300,function() {
                parent.remove();
            });
        }
    });
});

数据:'id=' + parent.attr('id')需要额外$php_var发送到网址:server_items_reorder.php

我的代码还有一点:

function savelayout(){
var positions = "";
var weight = 0;
var wb_name = "$wb_name";
$(".portlet").each(function(){weight++;positions+=(this.id + "=" + this.parentNode.id + "|" + weight + "&");});

$.ajax({
type: "POST",
url: "server_items_reorder.php",
data: positions
});
}

正如您所看到的,我已经在那里尝试添加名为$var的{​​{1}}。

完整代码:

wb_name

代码的目的是通过模块控制块系统。您可以通过其模块移动/添加/更改/删除块。

2 个答案:

答案 0 :(得分:0)

你的意思是

$.ajax({
    type: "POST",
    url: "server_items_reorder.php",
    data: {'positions':positions, 'wb_name': wb_name}
});

答案 1 :(得分:0)

您需要将PHP内联与AJAX请求混合:

$('.ui-icon-closethick').click(function(e) {
    e.preventDefault();
    var parent = $(this).parent().parent();
    $.ajax({
        type: "POST",
        url: "server_items_reorder.php",
        data: 'id=' + parent.attr('id') + '&php_var=<?php echo $php_var; ?>',
        success: function() {
            parent.slideUp(300,function() {
                parent.remove();
            });
        }
    });
});

对于你的第二个例子:

function savelayout(){
    var positions = "";
    var weight = 0;
    var wb_name = "<?php echo $wb_name; ?>";
    $(".portlet").each(function(){
        weight++;
        positions += (this.id + "=" + this.parentNode.id + "|" + weight + "&");
    });

    $.ajax({
        type: "POST",
        url: "server_items_reorder.php",
        data: positions
    });
}