jQuery技术

JQuery ui dialog(close)无效的解决办法(2)

字号+ 作者:H5之家 来源:H5之家 2017-02-28 17:06 我要评论( )

5、JSON内部常用数据类型无非就是字符串、数字、布尔、日期、null 这么几个,字符串必须用双引号引起来,其余的都不用,日期类型比较特殊,这里就不展开讲述了,只是建议如果客户端没有按日期排序功能需求的话,那

5、JSON内部常用数据类型无非就是字符串、数字、布尔、日期、null 这么几个,字符串必须用双引号引起来,其余的都不用,日期类型比较特殊,这里就不展开讲述了,只是建议如果客户端没有按日期排序功能需求的话,那么把日期时间直接作为字符串传递就好,可以省去很多麻烦。


还有一种更简单的办法 jQuery实现更简单的Ajax跨域请求

 

 代码如下 复制代码

<script type="text/javascript">
$(document).ready(function(){
    var oBtnTest = $("#btnTest");
    oBtnTest.click(function(){
        oBtnTest.disabled = true;
        var oResult = $("#result");
        oResult.html("loading").css("color","red");
        jQuery.getScript("", 
        function(){
            oResult.html("name:" + jimmy.name + "<br/>email:" + jimmy.email).css("color","black");
            oBtnTest.disabled = false;
        }); 
    });
});
</script>
<button id="btnTest">BtnTest</button>
<div id="result"></div>

远程服务器端js.txt的内容为:

 代码如下 复制代码

var jimmy = {name:"jimmy.yang",email:jimmy.yang@163.com}

当然我们也可以直接使用php输出var jimmy = {name:"jimmy.yang",email:jimmy.yang@163.com}也是可以的哦。

(function($) {
    $.fn.lee_dialog = function(param){   
    if(typeof param.dialog=='undefined') return;
    var dialog = param.dialog;
    var close = param.close || '.close';
    var speed = 400;
    var margin_left = '-'+parseInt($(dialog).width()/2)+'px';
    var margin_top = '-'+parseInt($(dialog).height()/2)+'px';
        var _this = null; 
    var bg = '<div class="lee_dialog_bg" style="width:100%;height:'+$(document).height()+'px;background:#000;opacity:0.7;filter:alpha(opacity=70);position:absolute;left:0;top:0;z-index:2147483600;display:none;"></div>';
 
    $(dialog).css({'position':'fixed','margin-left':margin_left,'margin-top':margin_top,'left':'50%','top':'50%','display':'none','z-index':2147483601});
    $('body').append(bg);
 
        $(this).each(function(){
 
        _this = $(this);
 
        _this.click(function(){
            if(!$(dialog).is(':visible')){
                $('.lee_dialog_bg').fadeIn(parseInt(speed/2));
                $(dialog).css({'top':'35%','display':'block','opacity':0.0});
                $(dialog).animate({top:'50%',opacity:1},speed);
            }
        });
 
        $(dialog+' '+close).click(function(){
            $(dialog).animate({top:'65%',opacity:0},speed,false,function(){$(this).hide().css('top','50%');$('.lee_dialog_bg').fadeOut(parseInt(speed/2));});
        });
 
 
 
 
    });
    }
   
})(jQuery);

checkbox是一个比较特殊的表单元素了,下面我来给大家介绍jQuery表单checkbox操作详解,有需要了解的同学可尝试一下。

你不能直接在html里面这样写:

 代码如下 复制代码

<input type="checkbox" name="sf" checked="checked">

一般以上代码是用html默认勾选。可是你如果用到jquery的ajax提交表单,不管你有没勾选,都会提交。因为你的判断不准。

 代码如下 复制代码

if (checkbox.attr('checked')){   }

比如上面的判断,就算你钩掉了选中,还是有值会提交。因为你钩掉了之后html并没有变。你可以用jQuery改变html。所以在你的input里面最好不要写 checked=”checked”
如:

 代码如下 复制代码

jQuery("#sKeepLogin").attr('checked') == "checked" ? 1 : 0

还有一种判断:

 代码如下 复制代码

if($("input[type='checkbox']").prop("checked"))

这是在jquery1.6以上才可以用。可是今天我测试了下,就是有问题。我明显加载的是juqery1.7,还是说prop方法不能用。


我只好改成:

 代码如下 复制代码

var val = $(".bottomimg .box_info input[type='checkbox']").attr("checked");
if(val=="checked" || val==true){   }

这里按我最早理解

 代码如下 复制代码

if(val==”checked”)

应该这样就能搞定,可是在某种情况下还是有问题。val的值会变成true
所以就变成上面那样。

//由于复选框一般选中的是多个,所以可以循环输出

 代码如下 复制代码

$("input[type=checkbox][checked]").each(function(){
alert($(this).val());
});

checkbox的checked问题

jquery判断checkbox是否被选中

在html的checkbox里,选中的话会有属性checked="checked"。

如果用一个checkbox被选中,alert这个checkbox的属性"checked"的值alert($(#xxx).attr("checked")),会打印出"true",而不是"checked"!

如果没被选中,打印出的是"undefined"。

注意红色的部分,这里说到

 代码如下 复制代码

$("#chekbox").sttr("checked")//should be print "true" , not "checked"

经过测试,证明上面说法有问题

 代码如下 复制代码

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • jQuery UI 中的 datepicker( )方法

    jQuery UI 中的 datepicker( )方法

    2017-03-01 10:01

  • 【黑基网】免费 动画 教程 培训 公开课

    【黑基网】免费 动画 教程 培训 公开课

    2017-02-28 13:00

  • JQuery入门、手册及教程

    JQuery入门、手册及教程

    2017-02-28 10:01

  • jquery页面加载

    jquery页面加载

    2017-02-28 09:05

网友点评