2

サインアップフォームでは、asp.netの目立たない検証を使用して、ユーザー名が存在するかどうかを確認しています。衝突が見つかった場合、私のJsonResultメソッドは次を返します。

This is already in use. How about \u003cstrong\u003efoo123\u003c/strong\u003e?

私はMicrosoftの目立たない検証を使用して、これを自分のビューに表示します。

@Html.ValidationMessageFor(m => m.Username)

これにより、ページソースに次のように表示されます。

This is already in use. How about
<strong>foo123</strong>
?

ご覧のとおり、テキストは3行に分割されています。これはFirefoxでは問題になりませんが、Chromeでは、これらの新しい行により、表示されるテキストがと同様に壊れます<br />。エンコーディングがこれのせいであると私は信じています-誰かが理由を説明できますか?この問題の解決策はありますか?

前もって感謝します。

4

3 に答える 3

0

それらが実際のページに改行で表示されている場合、最初に行うことは、<strong/>タグを調べて、それをプロパティとして定義する、display:block;またはプロパティをオーバーライドするCSSがあるかどうかを確認することですwhite-space

DOMエクスプローラーの出力が心配な場合は...これがChromeがDOMツリーを表示する方法です。これらの3行はそれぞれ個別のノード(2つのテキストノードと1つの要素ノード)であるため、同等として扱われます。私の答えの最初の段落を調べると、同じことがわかります。

于 2012-04-07T19:26:03.020 に答える
0

cssで微調整してみてください。

 \u003cdiv\u003e 
  This is already in use. How about \u003cstrong\u003efoo123\u003c/strong\u003e?
\u003c/div\u003e?

これはパディングの問題によるものだと思います。生成されたページの HTML コードをアップロードします。

于 2014-03-19T06:22:25.687 に答える