私はこれを期待:ASP.Net RadioButtonとCheckBoxがSpan内でレンダリングされるのはなぜですか?
<input id="CheckBox1" type="checkbox" class="myClass" />
<input id="RadioButton1" type="radio" class="myClass" />
<input id="TextBox1" type="text" class="myClass" />
...実際には、RadioButton
とCheckBox
:
<asp:CheckBox ID="CheckBox1" runat="server" CssClass="myClass" />
<asp:RadioButton ID="RadioButton1" runat="server" CssClass="myClass" />
<asp:TextBox ID="TextBox1" runat="server" CssClass="myClass" />
が...この
のようにレンダリングするために(いくつかの単純化のために削除する属性を持ちます)
span
タグでラップされ、そこにCSSクラスが適用されます。
<span class="myClass"><input id="CheckBox1" type="checkbox" /></span>
<span class="myClass"><input id="RadioButton1" type="radio" /></span>
<input type="text" id="TextBox1" class="myClass" />
これには理由がありますが、避ける方法はありますか?
$("input.myClass")
確かにそれだけに起こっている:あなたがそれらのすべてをキャッチすることはできませんので、それはjQueryのセレクタが醜いになり
$("input.myClass, span.myClass input")
を...しかし、それは醜いです。私は自分自身のセレクターを書くことができましたが、やはりエレガントではありません。
どのようにちょうど$( "。myClass")? – Hardwareguy
答えはありませんが、ちょっと待ってください - 数年前に.NETプラットフォームで作業を始め、JSを使ってチェックボックスの値を調べていたのですが、なぜ私の値が警告する。スペックタグとは何でしょうか。私はいつもMSがラジオボタンとチェックボックスの冗長タグを追加した理由を疑問に思ってきました! – Dhana
@Hardwareguy時にはそれがスパンになり、時にはそれが入力になります。それが問題だ。 $( "input.myclass")は多少特殊性があるかもしれませんが、$( "。myClass")は同じ頭痛を与えます。 – Mark