wbox对于如何获取文本框内容

1.获取代码

$('#wBox #content').val()

2.光这样获取是不行的,因为我后来发现在ie6、7下面,获取文本框的值是undefind。

这个插件的原理是当弹出div的时候,clone了当前要显示的div,这就导致了页面中存在两个相同div(包括里面的内容)的情况,所以当我们取值或要模拟点击的时候就无法精确的选择到元素,这里对源代码进行了下改写,在拷贝后把以前的那个div给移除,这就防止了这种情况的发生。

   1)在弹出的时候增加清空操作

   找到

if (_this.YQ.target) {
    con.replaceWith($(_this.YQ.target).clone(true).show());
}

   修改为:

if (_this.YQ.target) {
    var clone_html=$(_this.YQ.target).clone(true).show();
    $(_this.YQ.target).empty();//将其清空
    con.replaceWith(clone_html);
}

   2)在关闭的时候还原

   找到

/*
 * 关闭弹出框就是移除还原
 */
this.close=function (){
    if (C) {
        B.remove();
        C.stop().fadeOut(300, function(){
            C.remove();
        })
    }
}

   修改为:

this.close=function (){
    if (_this.YQ.target) {
        $(_this.YQ.target).html(C.find(_this.YQ.target).html());
    }
    if (C) {
        B.remove();
        C.stop().fadeOut(300, function(){
            C.remove();
        })
    }
}

我这里只是以我需要的情况来修改代码,我是针对弹出div的情况进行改写的,所以我选择的是如果有target的情况改写,如果有其他地方需要修改的,可以自行修改。当然我的方法可能不是最好的方法,欢迎大家指正。

     如需要更详细的了解wbox可参考推荐一款好用的jquery弹出层插件——wbox

     这里贴上我修改后的js代码     源码下载                

       
by 雪洁 2012-12-19 10:09:13 2315 views
我来说几句

相关文章