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 回答