(Ajax)关于用ajax来填充div的问题

本文讨论了一个使用Ajax在页面中局部刷新数据时遇到的问题,即在某些情况下,刷新数据的同时也会刷新页面上的OCX控件。通过将HTML静态部分前置并改用document.getElementById()方法逐个赋值,成功解决了此问题。

今天改一个bug,是一个很奇怪的bug:

在页面中的一个OCX控件还显示实时的图片,四个显示框中,选择其中一个,则在页面的其他位置会显示出这个图片对应的详细信息。

开始用的ajax来填充这段div:

<div id="right"> </div>


<script type="text/javascript" for="NamegOCX" event="GetSN(SN)">   
try{
GeDetail(SN);   //获取过车信息出入对应详情
}catch(err){
//none
}
</script>


function GetDetail(iPassID) {
    try {
        $.ajax({
                    url : "info.jsp",
                    type : "post",
                    data : "PassID=" + iPassID,
                    dataType : "html",
                    error : function() {


                    },
                    success : function(msg) {
                       $("#right").html(msg);
                     
}
                    },
                    complete : function() {
                    }
                });
    } catch (err) {
        // alert(err.description);
    }
}

在info.jsp中,是一个完整的table.....即可....

后来发现用这种方法有个问题,那就是在某些机器上,当本应该局部刷新div时,会把OCX控件也同时刷新,据说,这和显卡有关系。。。。。。

解决办法呢,就是把html中静态的部分写到前面中,然后在js中,用ajax不要再用 $("#right").html(msg),而是用最土的方法:

document.getElementById()来一个一个的写值。。。。这样就Ok了。。。






转载于:https://www.cnblogs.com/java0721/archive/2012/01/05/2602757.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值