像<input id="Radio1" checked="checked" name="myname" type="radio" value="v3" /><br />可以通过$('input[name=myname][checked]').val()来得到v3为什么name=myname这样写,而checked写成checked=checked不行?

解决方案 »

  1.   

    checked 是一个bool值 html标签了只有 存在于不存在 所以 checked 没有‘=’号的 
      

  2.   

    是为了兼容,以前HTML 可以直接写checked 不需要value。但是现在的标准是所有的属性都要有value值;所以为了兼容性考虑,判断checked不用那样写
      

  3.   

    html:
        <input id="Radio1" checked="checked" name="myname" type="radio" value="v3" /><br />
        <input id="Radio2" checked="checked" name="myname1" type="radio" value="v4" /><br />
        <input id="Radio3" checked="" name="myname1" type="radio" value="v5" /><br />
    js:
        var value1 = $("input [name=myname][checked]").val()
        var value2 = $("input[name=myname1]![checked]").val();
        var value3 = $("input[name=myname1][checked]").val();
        alert(value1)
        alert(value2)
        alert(value3)
    楼主可以试试这些值,name=myname是为了来找到叫myname的input标签,至于checked属性也是为了找到已经checked的标签,算是两个限定条件,和兼容没有关系