项目开发中遇到的--Bug知识整理!

====第一个Bug====》》  目前测试出现在IE7,IE6中。

    问题:<button></button>标签,经测试,不兼容IE7,IE6. (个人建议不要使用button标签)

    解决方案:改成<input type="button" value="提交">

//ajax表单提交操作  
$("form").submit(function () { if ($("#ddlArea").val() === "0" && $("#ddlProvince").val() === "0" && $("#ddlCity").val() === "0" && $("#trainingName").val().length === 0) { alert("请输入考点名称"); return false; } var formdata = $(this).serialize(); $.ajax2({ url: location.href, type: 'GET', data: formdata, success: function (html) { $("#trainingList").html(html); }, error: function () { $("#trainingList").html("出错了"); } }, "#trainingList"); return false; //此操作是为了,阻止表单提交 });

====第二个Bug====》》Jquery中的 :Visible,  如果没有给值,Visible 是不起效果的,至少是我发现的

 注意html代码中的一句<span class="cn_red" empty="请输入学习卡卡号!" style="display: none">&nbsp;</span>

 Html代码如下

          <form action="/card/Binding" id="frmActivate" method="post">
                    <table width="100%" border="0" cellspacing="0" cellpadding="0" class="cn_conxx_table">
                        <tr>
                            <td width="25%">
                                <span class="cn_conxx_16px yahei">请输入学习卡卡号:</span>
                            </td>
                            <td width="40%">
                                <input name="cardnum" type="text" class="cn_conxx_input" /><span id="tipSpan"></span>
                            </td>
                            <td width="34%">
<!--------- 注意这里设置了一个 &nbsp;------------>
<span class="cn_red" empty="请输入学习卡卡号!" style="display: none">&nbsp;</span> </td> </tr> <tr> <td> <span class="cn_conxx_16px yahei">请输入学习卡密码:</span> </td> <td> <input name="cardpwd" type="password" class="cn_conxx_input" /><span id="tipSpan"></span> </td> <td>
<!----------注意这里设置了一个 &nbsp;----------->
<span class="cn_red" empty="请输入学习卡密码!" style="display: none">&nbsp;</span> </td> </tr> <tr> <td> </td> <td valign="bottom"> <div class="cn_closebtn yahei"> <a href="javascript:;" id="btnSubmit">确 定</a><a href="#" class="a1">取 消</a>
</
div> </td> <td> </td> </tr> </table> </form>

Js代码如下

 $(function () {
        $(':text,:password').bind('blur', function () {
            var tips = $(this).closest('tr').find('.cn_red');
            if ($.trim($(this).val()).length === 0) {
                $(this).siblings().show().messagebox($(tips).attr("empty"), "", 1500, 1, { style_tipsyinner: "padding:5px;width:150px;background:#336699",
isFade: false }); $(tips).show(); } else { $(this).siblings().hide(); $(tips).hide(); } }); $("#btnSubmit").click(function () { if ($("#frmActivate").attr('submitFlag') === '1') { return true; }

//**********注意这里********** $(
':text,:password').trigger('blur'); if ($('.cn_red:visible').length > 0) { return false; }
//*******************
var data = $('form').serialize(); $.post('/card/activateform', data, function (json) { if (json === 1) { $("#frmActivate").attr('submitFlag', '1').submit(); } else if (json === 0) { $("body").messagebox("卡号密码错误!", "", 500, 3, { style_tipsyinner: "padding:20px 28px;background:#ff6600" }); } else { $("body").messagebox("参数错误!", "", 500, 3, { style_tipsyinner: "padding:20px 28px;background:#ff6600" }); } }); return false; }); });

第三个Bug,正在进行中>>>>>>>>>>>>>>>

jquery操作 checkbox 是不兼容的:

单选:jquery版本 1.5.2 ----1.8.3

<script type="text/javascript" src="jquery.1.8.3.js"></script>
<script type="text/javascript">
    $(function(){
        $(':checkbox[name=chkbox]').each(function(){
            $(this).click(function(){
                if($(this).attr('checked')){
                    $(':checkbox[name=chkbox]').removeAttr('checked');
                    $(this).attr('checked','checked');
                }
            });
        });
    });
  </script>

单选:jquery版本 1.9 以上操作

 //单选事件checkbox,完美解决
            $(":checkbox[name=chkbox]").unbind().bind("click", function () {
                if ($(this).attr('checked')) {
                    $(this).removeAttr('checked');
                }
                else {
                    //选中
                    var _thisIndex = $(this).index();
                    $(":checkbox[name=chkbox]").each(function (j) {if (_thisIndex != j) {
                            $(":checkbox[name=chkbox]").eq(j).removeAttr("checked");
                        }
                        else {
                            $(this).attr('checked', 'checked');
                        }
                    });
                }
            });
        });

转载于:https://www.cnblogs.com/Kummy/archive/2013/05/03/3046387.html

猜你喜欢

转载自blog.csdn.net/weixin_33806914/article/details/93428340