0

ascx ページのテキスト ボックス入力コントロール値に問題があります。その値は何らかの形で常に html エンコードされており、無効にする方法がわかりません。たとえば、値に<文字が含まれている場合、常に に変換され&lt;ます。Name.Lastname奇妙なことに、 (子プロパティを持つ) のようなフィールドでのみ発生します。私の最初の考えは、Html拡張メソッドが原因である可能性があるということでした

Html.TextBoxFor(m => m.Name.LastName, new { maxlength = "100" }) 

しかし、これは当てはまりません.html入力を直接使用すると、値はまだエンコードされているためです:

<input id="Name_LastName" maxlength="100" 
       name="Name.LastName" 
       type="text" value="<%= Model.Name.LastName %>" />

Name.LastName(子プロパティを持つ)フィールドのテキスト ボックス値の html エンコードを無効にする方法を知っている人はいますか?

4

1 に答える 1

0

さらに調査した結果、変数がを使用して初期化されたjavascript関数が原因であることがわかりました<%:。この関数は、テキストボックスの初期化に使用されました。結局、子プロパティとは何の関係もありませんでした。私はjavascript部分 <%:で withを変更しました:<%=

var lastName = "<%: Model.Name.LastName %>";

var lastName = "<%= Model.Name.LastName %>";

于 2013-05-10T11:32:03.183 に答える