Ajax.更新不能在ie8上工作
Ajax.Update doesn't work on IE 8
我有一个登录表单,用户可以在此表单上输入用户名/密码并单击登录按钮向服务器发送请求。
登录按钮调用一个名为submitLoginFormIntoDivAndReload的函数,而函数submitLoginFormIntoDivAndReload调用另一个名为submitFormObjIntoDivAndReload的函数。
下面是函数的详细信息:
function submitLoginFormIntoDivAndReload(servletUrl, formObj, divId) {
//var formObj = document.getElementById(formId);
var shortUserName = formObj.shortusername.value;
alert("starting userName: " + shortUserName);
var organization = formObj.organization.value;
alert("organization: " + organization);
formObj.username.value = createLdapString(shortUserName, organization);
alert("ending userName: " + formObj.username.value);
var loggingInContent = "<table><tr><td width='600px' align='center'><p>logging in</p></td></tr></table>"
document.getElementById(divId).innerHTML = loggingInContent;
submitFormObjIntoDivAndReload(servletUrl, formObj, divId);
}
function submitFormObjIntoDivAndReload(url, formObj, divId) {
alert('Form object: ' + formObj);
alert('url: ' + url);
alert('divId: '+divId);
var myRequest = new Ajax.Updater(divId, url,
{ method: 'post',
parameters: Form.serialize(formObj),
onSuccess: function(reponse) {
window.location.reload();
}
});
alert("after update");
}
这段代码在firefox上运行完美。但是,它不能在IE上工作。
在IE上,我可以获得所有警报(用于调试)。然而,似乎Ajax。Updater没有向服务器发送请求(我在服务器端看不到任何输出)。
在FireFox上,我也可以得到所有的修改。我可以看到Ajax。Updater确实向服务器发送请求,因为我可以在服务器端看到预期的输出。
我在网上搜索,有人说IE有缓存问题:Ajax更新程序在internet explorer中不工作但似乎这个问题只针对"GET"方法,而不针对"POST"方法。我使用的是"POST"方法。我还在表单中添加了一个假输入,它仍然不起作用。
有人知道吗?非常感谢!
顺便说一下,我使用的是原型1.5.1。
无论是POST还是GET,您的响应时间都将非常接近。我想说,您仍然遇到了在服务器响应之前持续存在的竞争条件。
我想看看这个关于防止竞态条件的链接。我找到的许多解决方案之一是"设置一个循环,每10毫秒检查一次值,否则等待。"
相关文章:
- IE8更改文本区域上的事件侦听器不工作
- window.onbeforeunload在IE8中不触发(在Firefox,Chrome和Safari中工作正常)
- $('body').on('blur')在IE8中工作不好
- window.location重定向没有'我不在IE8上工作
- addEventListener没有'不能在IE中工作(在IE8中测试)
- Requirejs和主干应用程序,不能在IE8中工作
- 无法在 IE 9 中传递此运算符的值,而它在 IE7 和 IE8 中工作正常
- Request.UrlReferrer在IE8中无法正常工作,并且工作正常IE9
- 不触发 OnClick 事件 IE8,但在 Firefox 中工作正常
- 如何优化我的jQuery以始终在IE8中工作,目前它被击中和错过
- 获取尾随逗号(在JavaScript中)在IE7 / IE8中工作
- FormData ajax 上传 IE8 -> 替代品及其工作原理
- jquery设置隐藏的输入值在IE7和IE8中未按预期工作
- 在 IE8 中单选按钮上更改无法正常工作
- 如何让 jQuery methos text() 函数在 IE8 中工作
- 重写一个Javascript函数,该函数可以选择在IE8中工作的活动导航选项卡
- 修复了在页面底部加载时html5标签IE8不工作的问题
- js库无法在IE8中工作
- 输入类型=“file".submit()不工作IE8
- 让cufon在IE7中工作IE8 -我已经按照文档做了所有的事情