• JQuery之Attr()与Prop()方法


    一、Prop()的由来

      JQuery 1.6开始 新增方法prop()

      prop()解决:表单元素中checked,selected,disabled等属性在方法attr()中可能会出现的不一致问题(属于attr方法之前的bug);

      [引用文献]https://segmentfault.com/a/1190000002680303 

    二、BUG重现

    <table class="table table-striped " style=" ">
        <thead>
            <th><input type="checkbox" name="" id="select_all_checkbox" onclick="toggle_select_all_records(this.checked)"></th>
            <th style=" 9% ">病案号</th>
            <th style=" 9% ">出院日期</th>
            <th style=" 15% ">姓名</th>
            <th style=" 50% ">摘要</th>
            <th style=" 12% ">操作</th>
        </thead>
        <script type="text/javascript">
        var toggle_select_all_records_counts=0;
        function toggle_select_all_records(checked_value){
            alert(checked_value);
            var inputs = $('input[type="checkbox"]').prop({
                checked: checked_value
            });
            /*
            表单元素不建议使用attr方法,建议使用prop(),语法一致:
            使用attr方法将可能导致中途设置的属性失灵;	
            */
        }
        </script>
        <tbody>
            <tr>
                <td><input type="checkbox" name=""></td>
                <td>2854863</td>
                <td>2017-03-05</td>
                <td>
                    <span name="">吴二</span>
                    <br>
                    <span>主治医师:</span><span><a href="#">王晓兵</a>-<span>呼吸科</span></span>
                </td>
                <td style="white-space: normal;text-align: left;text-align: justify;">
    诊断:呼吸道感染 神志清 精神软,咽红,扁桃体II度肿大,充血,呼吸平稳25次/分,两肺呼吸音粗,无罗音,心率95/分,律齐,心音有力,无杂音,未及包块
                </td>
                <td><a href="" class="btn btn_view">查看</a></td>
         </tr>  
      </tbody>
    </table>
    </table> 当选择全选按钮,点击到第三次及其以后,attr方法均会失效。 
    赞赏-支付宝二维码
    本文作者千千寰宇
    本文链接 https://www.cnblogs.com/johnnyzen
    关于博文:评论和私信会在第一时间回复,或直接私信我。
    版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
    声援博主:若本文对您有帮助,可点击右下角推荐一下。您的鼓励、【赞赏】(左侧赞赏支付码)是博主技术写作的重要动力!
  • 相关阅读:
    Confd+Consul 动态生成配置文件
    Flask实例化的参数 及 对app的配置
    Flask 中的路由系统
    Flask 中内置的 Session
    Flask中的模板语言jinja2
    docker
    windows上使用git
    redis的源码编译安装+发布订阅+RDB持久化
    mariadb安装和mysql主从同步
    nginx负载均衡
  • 原文地址:https://www.cnblogs.com/johnnyzen/p/7125731.html
Copyright © 2020-2023  润新知