【发布时间】:2012-08-19 17:56:45
【问题描述】:
我正在使用 XMLHttpRequest 进行 AJAX 调用。
它在 IE7 中运行良好,但是当我在 Firefox 中尝试相同时,我无法通过 response.write 找回它
我正在使用以下功能:
<script type="text/javascript">
function ddSelect_Change() {
var xmlhttp;
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
xmlhttp = new XMLHttpRequest();
}
else if (window.ActiveXObject) { // IE
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
}
}
}
xmlhttp.onreadystatechange = function () {
//alert(xmlhttp.responseText);
if (xmlhttp.readyState === 4 && xmlhttp.status === 200) {
}
}
var url = "http://" + location.hostname + "Locationurl?Method=methodname";
xmlhttp.open("POST", url);
xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xmlhttp.send();
}
添加
我有两个独立的 Web 应用程序,一个是 tridion Web 应用程序,另一个是自定义 Web 应用程序。我正在从 tridion Web 应用程序到自定义 Web 应用程序进行交互。两个 url 都有不同的域。并且状态我在 Firefox 中得到 0,而对于 readystate,我在警报中没有得到 (3)。
【问题讨论】:
-
AJAX 代码的其余部分是什么样的?
-
@ChristoferEliasson 我正在使用上面的其余代码。
-
你有任何 JS 错误吗?如果您使用 fiddler 记录您的 HTTP 流量,是否对服务器进行了调用?
-
您可能需要确保在调用 .send() 之前定义了 onreadystatechange 函数(您上面的解释并不清楚您是否这样做)。
标签: c# javascript ajax