zoukankan      html  css  js  c++  java
  • jQuery对html元素的取值与赋值实例详解

    jQuery对html元素的取值与赋值实例详解

    转载  2015-12-18   作者:欢欢   我要评论

    这篇文章主要介绍了jQuery对html元素的取值与赋值,较为详细的分析了jQuery针对常见html元素的获取与赋值技巧,非常简单实用,需要的朋友可以参考下

    本文实例讲述了jQuery对html元素的取值与赋值方法。分享给大家供大家参考,具体如下:

    Jquery给基本控件的取值、赋值

    TEXTBOX:

    1
    2
    3
    4
    5
    var str = $('#txt').val();
    $('#txt').val("Set Lbl Value");
    //文本框,文本区域:
    $("#text_id").attr("value",'');//清空内容
    $("#text_id").attr("value",'test');// 填充内容

    LABLE:  

    1
    2
    3
    4
    5
    6
    var str = $('#lbl').text();
    $('#lbl').text("Set Lbl Value");
    var valradio = $("input[@type=radio][@checked]").val();
    var item = $('input[@name=items][@checked]').val();
    var checkboxval = $("#checkbox_id").attr("value");
    var selectval = $('#select_id').val();

    多选框checkbox:

    1
    2
    3
    $("#chk_id").attr("checked",'');//使其未勾选
    $("#chk_id").attr("checked",true);// 勾选
    if($("#chk_id").attr('checked')==true) //判断是否已经选中

    单选组radio:

    复制代码 代码如下:
    $("input[@type=radio]").attr("checked",'2'); //设置value=2的项目为当前选中项

    下拉框select:

    1
    2
    3
    $("#select_id").attr("value",'test');// 设置value=test的项目为当前选中项
    $("<option value='test'>test</option><option value='test2'>test2</option>").appendTo("#select_id")//添加下拉框的 option
    $("#select_id").empty();//清空下拉框

    获取一组名为 (items)的radio被选中项的值

    复制代码 代码如下:
    var item = $('input[@name=items][@checked]').val();//若未被选中 则val() = undefined

    获取select被选中项的文本

    1
    2
    3
    var item = $("select[@name=items] option[@selected]").text();
    select下拉框的第二个元素为当前选中值
    $('#select_id')[0].selectedIndex = 1;

    radio单选组的第二个元素为当前选中值

    复制代码 代码如下:
    $('input[@name=items]').get(1).checked = true;

    重置表单:

    1
    2
    3
    $("form").each(function(){
      .reset();
    });

    补充:

    jQuery对form表单元素的取值与赋值:

    1. 选取元素

    $("#myid")效果等于document.getElementById("myid"), 但是写的字符要少好多啊.

    如果需要将jQuery对象转换成html元素, 则只需要取其第0个元素即可. 例如$("#myid")返回的是jQuery对象, 而$("#myid")[0]返回的就是html元素

    如果选择所有的img元素, 那么这么写: $("img")

    如果选择带有class="TextBox"的div元素(<div class="TextBox"></div>), 那么这么写: $("div.TextBox")

    选择带有myattr属性的元素$("div[myattr]")
    选择带有myattr属性, 并且属性值等于myclass的元素$("div[myattr='myclass']")
    属性不等于[myattr!='myclass']
    属性以my开头[myattr^='my']
    属性以class结尾[myattr$='class']
    属性包含cla这三个字符[myattr*='cla']

    如果一个选择会返回多个元素, 并且希望每返回一个元素, 就把某些属性应用到该元素上, 可以这么写

    1
    2
    3
    4
    5
    6
    $("div").each(function()
    {
    $(this).css("background-color", "#F00″);
    alert($(this).html());
    $(this).width("200px");
    });

    2.事件

    给页面加onload事件处理方法

    1
    2
    3
    4
    $(function()
    {
    alert("页面结构加载完毕, 但是可能某些图片尚未加载(一般情况下, 此事件就够用了)");
    });

    可以给页面绑定多个onload事件处理方法

    1
    2
    3
    4
    5
    6
    7
    8
    $(function()
    {
    alert("我首先被执行");
    });
    $(function()
    {
    alert("我第二被执行");
    });

    绑定特殊事件

    1
    2
    3
    4
    $("#myid").keydown(function()
    {
    alert("触发了keydown事件");
    });

    除了这些常用的, 不常用的事件需要通过bind方法绑定

    3. 元素属性/方法

    得到一个元素的高度, $("#myid").height()
    得到一个元素的位置, $("#myid").offset() 返回的是一个offset对象, 如果取元素位置的top, 则$("#myid").offset().top,?取left则$("#myid").offset().left
    得到一个元素的innerHTML, $("#myid").html()
    得到一个元素的innerText, $("#myid").text()
    得到一个文本框的值, $("#myid").val()
    得到一个元素的属性, $("#myid").attr("myattribute")

    以上这些方法有个基本特征, 就是不带参数表示取值, 带有参数表示设定值(除了offset), 例如

    1
    2
    3
    $("#myid").height("20″);
    $("#myid").html("<a href=">asdasd</a>")
    $("#myid").val("asdasd")

    需要注意, offset是只读的.

    给一个元素设置属性

    复制代码 代码如下:
    $("#myid").attr("width", "20%")

    读取一个属性
    复制代码 代码如下:
    $("#myid").attr("width")

    一次指定多个属性
    复制代码 代码如下:
    $("#myid").attr({disabled: "disabled", "20%", height: "30″})

    删除属性
    复制代码 代码如下:
    $("#myid").removeAttr("disabled")

    应用样式
    复制代码 代码如下:
    $("#myid").addClass("myclass")

    删除样式
    复制代码 代码如下:
    $("#myid").removeClass("myclass")

    加一个样式
    复制代码 代码如下:
    $("#myid").css("height", "20px")

    加一组样式
    复制代码 代码如下:
    $("#myid").css({height:"20px", "100px"})

    需要注意的是: 如果是加一个样式, 这个样式的名字是css中的名字, 比如说style="background-color:#FF0000″, 对应的jQuery写法是
    复制代码 代码如下:
    $("#myid").css("background-color", "#FF0000″)

    但是加一组样式的时候, 样式的名字就是javascript中的css名字了, 比如: myid.style.backgroundColor = "#FF0000″, 对应的jQuery写法是
    复制代码 代码如下:
    $("#myid").css({backgroundColor:"#FF0000″})

    4. 根据关系查找元素

    找和自己同级的下一个元素

    复制代码 代码如下:
    $("#myid").next()

    找和自己同级的所有位于自己之下的元素
    复制代码 代码如下:
    $("#myid").nextAll()

    找和自己同级的上一个元素
    复制代码 代码如下:
    $("#myid").prev()

    找和自己同级的所有位于自己之上的所有元素
    复制代码 代码如下:
    $("#myid").prevAll()

    找自己的第一代子元素
    复制代码 代码如下:
    $("#myid").children()

    找自己的第一个父元素
    复制代码 代码如下:
    $("#myid").parent()

    找自己的所有父元素
    复制代码 代码如下:
    $("#myid").parents()

    例子:

    1
    2
    3
    4
    $("div.l4″).parents().each(
    function() {
    alert($(this).html());
    });

    会把class=l4的div的所有父元素都得到, 并且alert出他们的html

    例子:

    复制代码 代码如下:
    $("div.l4″).parents("div.l2″).each(function() { alert($(this).html()); });

    会得到class=l4的父元素, 该父元素必须是div, 而且其class=l2

    这里说的所有方法, 都可以带表达式, 表达式的写法参考第一部分

    5. 维护元素

    在body中增加一个元素

    复制代码 代码如下:
    $("body").append("<input type='text' value='asd' />")

    该语句会把这段html插入到body结束标签之前, 结果是<input type='text' value='asd' /></body>
    复制代码 代码如下:
    $("body").prepend("<input type='text' value='asd' />")

    该语句会把这段html插入到body开始标签之后, 结果是<body><input type='text' value='asd' />

    6.AJAX

    用get方法请求一个页面

    复制代码 代码如下:
    $.get("http://www.google.com", "q=jquery", function(data, status){alert(data)})

    表示请求http://www.google.com, 参数是q, 参数的值是jquery, 请求结束后(不管成功还是失败)执行后面的function, 该function有两个固定参数, data和status, data是返回的数据, status是本次请求的状态

    用post方法请求一个页面
    $.post(……..) 参数同get方法

    7.其他方法

    $.trim(str) 将str前后空格去掉
    $.browser 返回当前用户浏览器的类型
    $.browser.version返回当前浏览器的版本

    8. 插件

    jQuery支持插件, http://jquery.com/plugins/上面有很多现成的插件, 也可以自己写
    自己写插件, 请参考http://docs.jquery.com/Core/jQ.....end#object 和http://docs.jquery.com/Core/jQuery.extend#object

    1. 下拉框:

    1
    2
    3
    4
    5
    var cc1 = $(".formc select[@name='country'] option[@selected]").text(); //得到下拉菜单的选中项的文本(注意中间有空格)
    var cc2 = $('.formc select[@name="country"]').val(); //得到下拉菜单的选中项的值
    var cc3 = $('.formc select[@name="country"]').attr("id"); //得到下拉菜单的选中项的ID属性值
    $("#select").empty();//清空下拉框//$("#select").html('');
    $("<option value='1'>1111</option>").appendTo("#select")//添加下拉框的option

    稍微解释一下:

    select[@name='country'] option[@selected] 表示具有name 属性,
    并且该属性值为'country' 的select元素 里面的具有selected 属性的option 元素;
    可以看出有@开头的就表示后面跟的是属性。

    2. 单选框:

    1
    2
    $("input[@type=radio][@checked]").val(); //得到单选框的选中项的值(注意中间没有空格)
    $("input[@type=radio][@value=2]").attr("checked",'checked'); //设置单选框value=2的为选中状态.(注意中间没有空格)

    3. 复选框:

    1
    2
    3
    4
    5
    6
    7
    $("input[@type=checkbox][@checked]").val(); //得到复选框的选中的第一项的值
    $("input[@type=checkbox][@checked]").each(function(){ //由于复选框一般选中的是多个,所以可以循环输出
     alert($(this).val());
    });
    $("#chk1").attr("checked",'');//不打勾
    $("#chk2").attr("checked",true);//打勾
    if($("#chk1").attr('checked')==undefined){} //判断是否已经打勾

    希望本文所述对大家jQuery程序设计有所帮助。

            <div class="art_xg">
    

    您可能感兴趣的文章:

    微信公众号搜索 “ 脚本之家 ” ,选择关注

    程序猿的那些事、送书等活动等着你

    相关文章

    最新评论

    评论(0人参与0条评论)
    还没有评论,快来抢沙发吧!
查看全文
  • 相关阅读:
    linux 压力测试工具之ab
    docker save load export import的区别
    手把手教你打造高效的 Kubernetes 命令行终端
    K8S 中的容器编排和应用编排
    linux mount一个目录到另外一个目录
    linux sed命令详解
    各种安全证书间的关系及相关操作
    Linux Shell/Bash wildcard通配符、元字符、转义符使用
    vim打开多个文件、同时显示多个文件、在文件之间切换
    吉他演奏中的速度与节拍
  • 原文地址:https://www.cnblogs.com/jpfss/p/8889782.html
  • Copyright © 2011-2022 走看看