如何使用AJAX调用传递变量?
以下是我的JS代码:如何使用AJAX调用传递变量?,ajax,post,Ajax,Post,以下是我的JS代码: function info(){ $.ajax({ type:'POST', url:'doSomething.php', data:'text='+encodeURIComponent($('.text').html()) +'&info1='+encodeURIComponent($('.info1').html()) +'&info2='+en
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脚本;除了:
- var1 var2 var3 谁能告诉我为什么? 以上JS或我的PHP是否存在问题:
data:{prop11:'some value',prop2:'someVal2'}
我不确定您想如何使用
$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是服务器端语言
在客户端,生成的javascript将使用服务器生成的常量值运行。我需要这些值来自调用此JS函数的PHP脚本$var1$var2$var3在脚本中得到响应。你是什么意思?-对不起,如果这是显而易见的…谢谢你的回答,但你能具体说明一点吗?如何从PHP变量中获取“某些值”谢谢,你是说在客户端$var1。。。将替换为html其余部分中提供给客户端的相同PHP值?甚至$var1。。。在JS里面-我会试试,让你知道…太棒了!这是一个概念,因为我不是PHP背景,所以我不确定语法。通过在互联网上快速搜索,我认为这种语法可以:让我知道它是否有效如果JS是由PHP在服务器端创建/解析的,这意味着,如果JS在PHP脚本中,它可以工作,但是如果我将JS文件包含到PHP脚本中,服务器“解析器”会忽略PHP标记。-谢谢看这里:有趣…这可能非常方便…考虑将JS文件扩展名切换到PHP,可能会使JS文件无法被“解析”html脚本之外的窥视者读取…需要运行一些测试…关于隐藏JS看这里: