jquery ajax 接收 空字符串。

大神哪位知道,jquery ajax 接收 空字符串。?

使用 success: function (result)
接收一个 Response.Write 返回的空字符串 差不多是 Response.Write("");
不是空字符串就可以接到,如果是空字符串就显示为 [object XMLDocument]
我只是想能接收到空字符串。
最新回答
"焉薰妝╪

2022-04-08 06:50:36

这个可能与你设置的返回的数据类型由关系,我下面这段代码在各种浏览器上测试没有出现你说的问题:
<script language="javascript">
$.ajax({
type:"POST",
url:"./response.php",
data:{"value":''},
success:function(result){
alert(result);
}
});
</script>
注意,我这里并没有设置返回的数据的类型,默认为字符串
追问
在 ie中没有出现这种情况  Firefox 是出现了。 datatype 我也是没设置的, 另外我设置了  html 或者  text 也是一样的。
追答

这段代码我测试了的,在火狐下也是可以弹出来的。


你把服务器端的输出稍微改下试试:

Response.write(" ")

注意:双引号之间有个空格

夕颜为谁舞

2024-03-16 16:54:19

IIS输出一对双引号有这么难吗
Response.Write("\"\"");
追问
并不是要输出双引号。 我是要输出空字符串。打个比方,我用一个输入框 和一个按钮 点击按钮吧这个 输入框的内容传到 后台 然后后台再返回我输入的内容, 如果我什么都没输入 后台能接收到这个空字符串 但是返回来 就不行。
追答
我知道你的意思,把双引号输出来,前台就能知道双引号就是空的意思了
再说,现在web开发都用json数据做前后台交互了,建议你升级一下技术,这样就不会有那么多想象不到的低级错误了
追问
感谢你的回答,json 是有用的,不过这里是 输出 html 格式。 而且这个问题只有在 Firefox 中存在。
追答
你输出一对双引号出来试试看先,OK ?!
js怎么可能认识C#输出来的“空”
追问
html 中不存在 "" 的不是吗? 我也说了只有 firefox 无法接收到这个 string.Empty

错误为:
XML解析错误:未找到元素
位置:moz-nullprincipal:{eb694cbd-1846-4f4c-ab3c-26ff25cc0a4e}
行:1,列:1:^ 如果我输出两个双引号意义就变了。

foreach (Lz.Data.Model.Dormitories model in idol.GetObjectsByBuildId(""))
{
sb.Append(html内容);
}
context.Response.Write(sb.ToString());
追答
ff是有这个问题,如果你想兼容ff,那就用特殊字符串标示 “空” 吧
或者单独处理FF情况