0

这是我的 JS 代码:

   function info(){
    $.ajax({
        type:'POST',
        url:'doSomething.php',
        data:'text='+encodeURIComponent($('.text').html())
            +'&info1='+encodeURIComponent($('.info1').html())
            +'&info2='+encodeURIComponent($('.info2').html())
            +'&info3='+encodeURIComponent($('.info3').html())
            +'&var1='+$('#var1').val()
            +'&var2='+$('#var2').val()
            +'&var3='+$('#var3').val(),
        success:function(){$('.action').fadeIn(500).delay(1000).fadeOut(500)}
    });
    //alert("info - did something, great!");
    return false;
    };

一切正常并传递给 doSomething.php 脚本;除了:

  • 变量 1 变量 2 变量 3

    谁能告诉我为什么?上面的JS有问题,还是我的PHP有问题:

我是 AJAX 的新手。- 感谢您的帮助!

4

2 回答 2

0

做这个:

 data:{prop11:'some value',prop2:'someVal2'}
于 2013-07-19T03:17:55.670 回答
0

我不确定您想如何使用 $var1 $var2 $var3变量,但似乎您想以这种方式使用它:

  function info(){
    $.ajax({
        type:'POST',
        url:'doSomething.php',
        data:'text='+encodeURIComponent($('.text').html())
            +'&info1='+encodeURIComponent($('.info1').html())
            +'&info2='+encodeURIComponent($('.info2').html())
            +'&info3='+encodeURIComponent($('.info3').html())
            +'&var1='+$var1
            +'&var2='+$var2
            +'&var3='+$var3,
        success:function(){$('.action').fadeIn(500).delay(1000).fadeOut(500)}
    });
    //alert("info - did something, great!");
    return false;
    };

这是一个小解释:

  • PHP 是服务器端语言。

它从用户那里获取请求并生成要返回的 html 和 js 文件。如果在 html/js 文件中使用了一些名为 $var1 的变量,它们将被替换为它的值。

客户端对此一无所知,因为他得到了生成的 html/js 文件。在客户端,生成的 javascript 将使用服务器生成的常量值运行。

于 2013-07-22T21:47:04.813 回答