====第一个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"> </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%">
<!--------- 注意这里设置了一个 ------------> <span class="cn_red" empty="请输入学习卡卡号!" style="display: none"> </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>
<!----------注意这里设置了一个 -----------> <span class="cn_red" empty="请输入学习卡密码!" style="display: none"> </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;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'); } }); } }); });