Javascript html元素的值属性未定义
为什么Javascript html元素的值属性未定义,javascript,jquery,Javascript,Jquery,为什么name未定义 $('#langs li').click(function(){ var name = $(this).attr('value'); $.ajax({ type: "POST", url:'test.php', data: 'name='+name, success:function(raspuns){ //$('#content1').html(raspuns);
name
未定义
$('#langs li').click(function(){
var name = $(this).attr('value');
$.ajax({
type: "POST",
url:'test.php',
data: 'name='+name,
success:function(raspuns){
//$('#content1').html(raspuns);
var ras = raspuns;
$.ajax({
type: "POST",
url: "index.php",
data: 'ras='+ras;
)};
}
});
});
li
元素不支持值
属性。也许您正在通过.html()
查找li
的输入或内容
在这个演示中可以看到,
name
是未定义的:如果您的意思是raspuns
似乎未定义,可能是因为您没有echo
您来自test.php
的响应
test.php
...
echo 'this is my response';
AJAX调用
$.ajax({
...
success: function(raspuns) {
// raspuns == 'this is my response'
}
});
另外,如果要传递POST数据,我认为传递JSON对象会更好,如下所示:
$.ajax({
url: 'test.php',
type: 'POST',
data: {name: name},
...
});
您可以检查以下几项: 发送前确保您有数据。你对李有价值属性吗?或者,如果要获取li内容,请使用html()或txt()。但您可能希望在li?中获取输入字段值?。然后使用$(this.find(“input”).val(),如果里面只有一个输入。 然后请其他人检查: 1) 访问以确保其正确响应响应。您可能在php中有错误,或者链接可能无法访问 2) 您的url是这样的:?如果您的本地计算机中有一个虚拟主机,也可以。但是如果你有这样的东西,它就不起作用了
http://localhost/mysite/test.php
除非在ajax调用中更正路径,否则将调用完整链接
3) 确保您的javascript在发送之前没有失败。我的意思是,你能做alert(名字)吗?您还可以使用上面的beforeSend()检查是否正确结束数据
4) 确保您没有试图发出跨域ajax请求,因为POST不能这样做
5) 我可能会尝试使用“/test.php”而不是“test.php”,尽管我认为这不会有问题
您还可以使用console查看发生了什么 POST和“ras=”(看起来像GET)看起来很奇怪(但我不确定)。