gpt4 book ai didi

javascript - Ajax 调用后端 PHP 脚本不工作

转载 作者:行者123 更新时间:2023-11-28 05:23:47 24 4
gpt4 key购买 nike

我尝试了这个 SO 的答案.这是行不通的。 test.php 确实给了我一个框来输入带有提交按钮的文本。在我提交之前,Firefox 浏览器开发人员控制台向我显示了这条消息:

"SyntaxError: missing ) after argument list

未声明 HTML 文档的字符编码。如果文档包含 US-ASCII 范围之外的字符,则在某些浏览器配置中,文档将呈现为乱码文本。页面的字符编码必须在文档或传输协议(protocol)中声明。”

在我输入文本并提交后:

“表单以无法对所有 Unicode 字符进行编码的 windows-1252 编码提交,因此用户输入可能会损坏。为避免此问题,应更改页面以便以 UTF-8 编码提交表单通过将页面本身的编码更改为 UTF-8 或在表单元素上指定 accept-charset=utf-8。”

有什么建议吗?

test.php 有这个片段:

<form action="javascript:void(0);" method="post">
<input type="text" name="user" placeholder="enter a text" />
<input type="submit" value="submit" />
</form>

<script type="text/javascript">
$("form").submit(function(){
var str = $(this).serialize();
$.ajax('getResult.php', str, function(result){
alert(result); // the result variable will contain any text echoed by getResult.php
}
return(false);
});
</script>

getResult.php 有这个:

<?php
echo "The name you typed is: " . $_REQUEST['user'];
?>

最佳答案

首先,您在这里漏掉了一个右括号,

    $.ajax('getResult.php', str, function(result){
alert(result); // the result variable will contain any text echoed by getResult.php
}
^ missing );

其次,使用 POST 请求而不是 AJAX,如下所示:

$("form").submit(function(){
var str = $(this).serialize();
$.post('getResult.php', str, function(result){
alert(result);
});
return(false);
});

或者,如果您想使用 AJAX 请求,请执行以下操作:

$("form").submit(function(){
var str = $(this).serialize();
$.ajax({
type: 'POST',
url: 'getResult.php',
cache: 'false',
data: str,

success: function(result){
alert(result)
}
});
return(false);
});

关于javascript - Ajax 调用后端 PHP 脚本不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35203157/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com