js与jquery简单使用


一:页面加载事件

$(document).ready(function(){

});

  文档加载完后的事件不包括图片

  $(function(){........})


  一般都需要在这两个事件里边去写方法,不然页面元素没有加载完成,

  使用jquery无法获取元素对象


二:绑定事件

    $('#f').click(function(){
    alert("aaa");
    });

$('#f').bind('click', function() {
      alert("sdfsdfdsf");
    });


     给多个对象绑定事件

     $("#city").add("#District").add("#Street").change(function () {
            hostlist.searchbyp();
        });


四:Jquery ajaxForm

    配置属性

 var options = {
            type: "post",
            url: "../Login/GetLogin",
            success: function (data) {
                           }
        };
        $('#form').ajaxForm(options);
    然后 在使用 $('#form').submit();提交表单

   使用ajaxForm相比ajax方式可以少一个参数项,简洁一点


五:表单序列化

     1:序列化成字符串

      $("#myForm").serialize()

       username=sdf&password=134

注意:表单的里边是要name属性不是id

2:序列化成数组

$("#myForm").serializeArray()

      但在使用asp.net作为后台用ajax需要序列化成json的字符串

      jquery插件序列化成json字符串

     (function ($) {
             $.fn.serializeJsonStr = function () {
                 var jsonstr = "{";
                 $(this.serializeArray()).each(function () {
                     jsonstr += "'" + this.name + "':'" + this.value + "',";
                 });
                 jsonstr = jsonstr.substr(0, jsonstr.length - 1);
                 jsonstr += "}"
                 return jsonstr;
             };
         })(jQuery);

        $("#myForm").serializeJsonStr()

       效果{'username':'sdf','password':'123'}


六:通过方法名调用方法

   eval("ww()");
   eval("ww")();


七:操作css

       $(obj).css("background", "url(images/3.png)");

       $("#ajtr").css("visibility", "visible");

       $("#aa").attr("class","p1"); //设置样式为p1


八:传递this对象

     index.jump = function (obj)
        {
            $(obj).css("background", "url(images/3.png)");
        }

   <a οnclick='index.jump(this)'>aaaaa</a>


   

$(document).ready(function(){
    $('#selectid').change(function(){
        alert($(this).children('option:selected').val());  //弹出select的值
    });
})
 

九:解决中文乱码

       encodeURI

        url: encodeURI('/Home/A?type=公告'),

十:jquery与dom对象相互转化

        1:dom对象转jquery

       var jqueryobj = $("<a >YS 1</a>");

       2:jquery转dom

       var dom = jqueryobj[0];或者var dom = jqueryobj.get[0];

       取outerHTML

      dom .outerHTML

      注意:如果直接弹出dom ,dom对象的命名有点奇怪 如果是a标签弹出来的就只是href,否者就是空

十一:jquery获取outerHTML

     1:先转化成dom节点在使用outerHTML

          var elemstr = $("#" + name)[0].outerHTML;

   2:扩展方法

    jQuery.fn.outerHtml = function() {
    return $("<p></p>").append(this.clone(true)).html();
    }

十二:跳转

      1:本页面跳转

            location.href="......";

      2:打开一个新的页面

           var obj = $("<span href='#' style='text-decoration:underline;cursor:pointer;text-decoration:none;'>YS 1</span>");                obj.attr("onclick", "javascript:window.open('http://www.shsict.com/as/query/search/com_user.jsp')");

十三:按回车实现登陆

      $(function () {           document.onkeydown = function (e) {               var ev = document.all ? window.event : e;               if (ev.keyCode == 13) {                   users.Login();调用登陆方法               }           }       });

十四:常用选择器

            $('#dg6').parent().find("div .datagrid-header-check").children("input[type='checkbox']").eq(0).click();            $('#dg6').parent().find("div .datagrid-header-check").children("input[type='checkbox']").eq(0).attr("checked", true);

            

            updateBg = function (thisName) {                 $(thisName).parent().find("a").removeAttr("class");                   $(thisName).addClass("cur");             }

          

            $('#dg6 a');

         获取兄弟节点:

       $('#id').siblings()   当前元素所有的兄弟节点$('#id').prev()       当前元素前一个兄弟节点$('#id').prevaAll()   当前元素之前所有的兄弟节点$('#id').next()       当前元素之后第一个兄弟节点$('#id').nextAll()    当前元素之后所有的兄弟节点这三个方法都可以添加选择器,给出选择条件,就能找到你指定的兄弟节点了。

 


十五:jquery循环

        1:for

        $("#test td").each(function (index) {
                var aa = $(this).children().eq(index - 1).val();
                alert(aa);
            }); 


       $.each(dataObj, function (index) {


                        var item = dataObj[index];
                        alert(item.Carrier);
                        alert(item.Qyport);
                        alert(item.Number);
                    });

   

十六:比较时间

   将这两个字符串转换为Date类型,就可以直接比较大小了
function toDate(str){
    var sd=str.split("-");
    return new Date(sd[0],sd[1]-1,sd[2]); //注意需要在月份上减一,因为js的月份是从0开始的
}
var d1=toDate("2001-2-2 ");
var d2=toDate("2001-2-3");
alert(d1>d2);



十七:jQuery中add实现同时选择两个id对象

当用jQuery选择demo1和demo2,不要告诉我用jQuery('div')。 
这时就要用到标题中提到的方法,jQuery add方法:追加标签。 

jQuery('#demo1").add('#demo2");



十八:选中效果

  $("#tagqhaj li").eq(0).addClass("active").siblings("li").removeClass("active");  

  $(_my).addClass("active").siblings("li").removeClass("active");//选中点击的,去掉其他的

  

  一般模板页的菜单可以不选中任何一个,切换到具体的页面的时候在选中对应的,这样切换大菜单的时候选中就相对独立互不影响


十九:js取当前url页面名称

比如:http://网址/baike/3534.html?page=xxx
 我想用JS获取“3534”这个变量

var url = document.location.href;
var urlList = url.split('/');
var a = urlList[urlList.length-1].split('.')[0];

或者

        var url = document.location.pathname;
        var urlList = url.split('/');
        var name = urlList[urlList.length - 1]
        alert(name);



二十:全部替换

string.replace(/reallyDo/g, replaceWith);
string.replace(new RegExp(reallyDo, 'g'), replaceWith);

 http://fuleonardo.iteye.com/blog/339749



二十一;Jquery滑动开关方法 

 slideToggle


二十一:JSON字符串转与JSON对象相互转化

var str2 = { "name": "cxh", "sex": "man" };
要使用上面的str1,必须使用下面的方法先转化为JSON对象:
//由JSON字符串转换为JSON对象
var obj = eval('(' + str + ')');


可以使用toJSONString()或者全局方法JSON.stringify()将JSON对象转化为JSON字符串。

例如:

var last=obj.toJSONString(); //将JSON对象转化为JSON字符

或者

var last=JSON.stringify(obj); //将JSON对象转化为JSON字符

alert(last);



二十二:构建json对象,json数组

var othercontractJsons = [];
            $("#othercontactsTable tr").each(function (index, item) {


                
                var othercontractJson = {};
                //$(item).find("input").each(function (index, item) {
                othercontractJson.test = "123";
                othercontractJson.aaa = "234";
                //});
                othercontractJsons.push(othercontractJson);
            });



js学习资料

http://runjs.cn/  

http://jsrun.net/9kKKp 
http://runjs.cn/detail/fkkvhvun 
http://runjs.cn/detail/hgpqcjaz 





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值