batey520 2009-01-12 22:22
浏览 232
已采纳

ajax_jquery

$(document).ready(function() {
var wordInput = $("#word");
var wordInputOffset = wordInput.offset();
//隐藏div
$("#auto").hide().css("border", "1px black solid")
.css("top", wordInputOffset.top + wordInput.height() + "px")
.css("left", wordInputOffset.left + "px").width(wordInput.width());

//给文本框添加键盘按下弹起的事件
$("#word").keyup(function() {
//1,首先获取文本框中的内容
var wordText = $("#word").val();
//2,将文本框中的内容发送给服务器端
$.post("AutoComplete",{word:wordText},function(data){
//将dom对象data转换成JQuery对象
var jqueryObj = $(data);
//找到所有的word节点
var wordNodes = jqueryObj.find("word");
var autoNode = $("#auto");
//需要清空之前的内容
autoNode.html("");
//遍历所有的word节点,取出单词内容,然后将单词内容添加到弹出框中
wordNodes.each(function(){
//获取单词内容
var wordNode = $(this);
//新建div节点,将单词内容加入到新建的节点中
$("

").html(wordNode.text()).appendTo(autoNode);
});
//如果服务器端有数据返回,则显示弹出框
if (wordNodes.length > 0) {
$("#auto").show();
}
},"xml");
});

$("input[type='button']").click(function(){
alert("文本框中的[" + $("#word").val() + "]已被提交了!");
});
})

这段代码在firefox上是正常的,他有调到"AutoComplete" servlet
并通过servlet把值读出来,,,
但是用ie就不正常了,,IE也有调了"AutoComplete" servlet
就是不能把值读出来,,,,,
在IE中,程序执行到这句话
$.post("AutoComplete",{word:wordText},function(data){
就不执行了

请问在ie中怎么改以上的代码,,先谢过

  • 写回答

2条回答 默认 最新

  • kjah_1 2009-01-13 11:38
    关注

    首先看js有没有报错,然后
    改用$.ajax增加cache:false 和 error 的处理,
    $.post没有禁止缓存可能是原因之一,
    另外在ajax post过程中和格式转换过程中出现的错误,可以用error的处理函数查看

    $.ajax大致如下:
    [code="javascript"]
    $.ajax({
    type: "POST",
    cache:false,
    url: url,
    data: data,
    success: callback,
    dataType: type,
    error: errorFun
    });
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办