首先,我知道在stackoverflow上有关于此的多个主题,我阅读了大部分内容,但我仍然无法弄清楚为什么以下内容无效。
所以我有一个这样的表格:
echo "<td> <form action=\"admin.php\" method=\"GET\" onsubmit=\" modifyPassword();\">
这是modifyPassword函数:
function modifyPassword(){
var newpw=prompt("Enter a new password");
if(newpw !== null){
$.ajax({
type: "GET",
url: "admin.php",
data: newpw,
success: function(data)
{
console.log(data);
}
});
}}
当表单实际提交时,我希望从输入的内容中获取值,如下所示:
echo $_GET['data'];
这都在同一个文件中。 $ _GET [&#39;数据&#39;]的输出没有显示任何内容。
有人能告诉我我做错了吗?
//编辑,更多代码: 我使用多个表单,所以这里是处理表单的代码:
}elseif (isset($_GET['Modify'])){
echo $_GET['data'];
形成自己:
echo "<td> <form action=\"admin.php\" method=\"GET\" onsubmit=\" modifyPassword();\">
<input type='hidden' name='counter' value=\"$count\"/>
<input type=\"submit\" value=\"Modify\" name=\"Modify\"/>
提供的功能:
<script type="text/javascript">
function modifyPassword(){
var newpw=prompt("Enter a new password");
if(newpw !== null){
$.ajax({
type: "GET",
url: "admin.php",
data: {data: newpw}, // passing a key/value pair
success: function(data)
{
console.log(data);
}
});
}}
</script>
答案 0 :(得分:1)
data: newpw,
应为data: {data: newpw},
这将导致$_GET['data']
被填充。在这种情况下,数据&#39;成为关键,而&#39; newpw&#39;是值。
function modifyPassword(){
var newpw=prompt("Enter a new password");
if(newpw !== null){
$.ajax({
type: "GET",
url: "admin.php",
data: {data: newpw}, // passing a key/value pair
success: function(data)
{
console.log(data);
}
});
}}
我认为你不应该使用相同名称的这么多变量 - 只是为了在错误捕获过程中减少混乱。