li
の中に<asp:Panel>
があります。問題はhtmlが検証されないことです。divからspanにasp.netパネルのレンダリングされたタグを変更しました
レンダリングdiv
をspan
に変更する際のヘルプがありますか?
私はASP.NET 4.0のWebサイトでこれをc#コードを使用しています。
li
の中に<asp:Panel>
があります。問題はhtmlが検証されないことです。divからspanにasp.netパネルのレンダリングされたタグを変更しました
レンダリングdiv
をspan
に変更する際のヘルプがありますか?
私はASP.NET 4.0のWebサイトでこれをc#コードを使用しています。
Eilon Liptonの記事Customizing the rendering of the UpdatePanelをご覧ください。
彼は、cssクラスとカスタムタグのプロパティを使って更新パネルを拡張する方法を示しています。
Labelコントロールを使用します。これはスパンに相当します。パネルのレンダリングを変更することはできません。
パネルにdefaultbuttonが割り当てられています – Adam
はい、それは翻訳されません。また、何かを考えただけで、DIVをスパンレイアウトのように動作させたい場合は、次のように追加できます:style = "display:inline;"あなたはCSSであなたが望むものを達成することができるかもしれません。 –
javascriptを追加すると、パネルの内容に対するデフォルトのボタン動作を適用し、パネルをプレーン<span>
要素で置き換えます。
jQueryを使用している場合は、hereの2つの例があります(コメントも確認してください)。
-1:あいまいさを通したセキュリティは、非常に抽象的な方法で考えています。これは、OPに時間外に多くの警告を見つけるための解決策しか持たないアイデアを提供するという観点からですが、 ! –
@Mr。失望:私は、フィールド内の入力を押すとデフォルトでクリックするボタンをコントローラに指示する責任がどのようになっているかを知ることができません。それはビューIMOの実装に完全に依存します。私はあなたのポイントを逃していますか? – PHeiberg
パネルのレンダリングをdivからスパンに変更することができます。Control Adapterを作成して、Panelのデフォルトレンダリングをオーバーライドすることができます。あなたはそれらを読んで、いくつかの例を参照することができますhereとhere。
ただし、私はあなたの問題を解決するための別のオプションを見つけると思います。このような標準コントロールの動作を変更すると、将来の開発者はアプリで何が起こっているのかを理解することが難しくなる可能性があります。この作業を実現するための努力は、他のソリューションの1つを使用するだけではありません。あなたがすでにパネルを持っているページがたくさんあり、それを他の何らかの仕組みに変更することができない/したくないのであれば、これは妥当としか見えません。
スタイリングのタグを変更する場合は、div
にdisplay:inline
を追加してください。それはとして動作するでしょうspan
それはまだIE7のdivとして動作します:) – StronglyTyped
回答を受け入れますか? –
パネル内には何がありますか? –
あなたはパネルで何をしていますか? 「」と定義することはできませんか? –