我是stackflow的新手,在使用jquery时遇到了一些问题' json ajax编码来自关联数组的值,jquery脚本什么都不做!
它是一个只做任何事情的脚本,但通过json编码返回给你的用户名和密码......
这是我的index.html文件的代码:
<html>
<head>
<title>test jquery</title>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#button").click(function() {
var sendu = $("#username").val();
var sendp = $("#password").val();
$.ajax({
type: "POST",
url: "ajax.php",
data: "username="+sendu+"&password="+sendp,
dataType: "json",
success: function(msg,string,jqXHR){
$("#result").html(msg.name);
}
});
});
});
</script>
</head>
<body>
Name: <input type="text" id="username" name=""username /> <br />
Password: <input type="password" id="password" name="password" /><br />
<input type="button" value="send" id="button" />
<div id="result"></div></p>
</body>
</html>
这是php文件:
<?php
$name = $_REQUEST['username'];
$password = $_REQUEST['password'];
$a = array('name'=>$name, 'password'=>$password);
$c = json_encode($list);
echo $c;
?>
所以当我删除dataType时:&#34; json&#34;当我从php文件中删除关联数组时,一切顺利,它有效!
这是删除json编码之后:
html:
<script type="text/javascript">
$(document).ready(function() {
$("#button").click(function() {
var sendu = $("#username").val();
var sendp = $("#password").val();
$.ajax({
type: "POST",
url: "ajax.php",
data: "username="+sendu+"&password="+sendp,
success: function(msg,string,jqXHR){
$("#result").html(msg);
}
});
});
});
</script>
和php文件:
<?php
$name = $_REQUEST['username'];
$password = $_REQUEST['password'];
$c = "your name is ".$name."<br />and your password is ".$password;
echo $c;
?>
还有一件事,我不是英国人,所以如果你发现任何常见的语法错误,请忽略!
答案 0 :(得分:1)
我注意到的一件事是你的AJAX调用中的这一行应该是:
data: "username="+sendu+"&password="+sendp,
应该是:
data: {username: sendu, password: sendp}
这样,您可以在使用dataType:JSON
时访问变量