【发布时间】:2016-11-09 20:42:37
【问题描述】:
我想做一些在这个答案中描述的事情:https://stackoverflow.com/a/25062743/5837056
我的问题是,javascript 所做的更改会在发布后持续存在吗?或者视图会按照 .cshtml 文件中硬编码的内容重新加载吗?
抱歉,这是一个愚蠢的问题。
【问题讨论】:
标签: javascript asp.net-mvc razor html-helper
我想做一些在这个答案中描述的事情:https://stackoverflow.com/a/25062743/5837056
我的问题是,javascript 所做的更改会在发布后持续存在吗?或者视图会按照 .cshtml 文件中硬编码的内容重新加载吗?
抱歉,这是一个愚蠢的问题。
【问题讨论】:
标签: javascript asp.net-mvc razor html-helper
视图将重新加载,因为它在 .cshtml 文件中编码,但是剃刀代码将替换为注入的 html。
例如在用户端
@EditorFor(x=>x.Example)
将被替换为
<input type="text" id="Example" name="Example"/>
等等。
但是,如果您在 razor 中创建一些条件或迭代语句,根据您的模型更改注入的代码,您可能会影响初始视图。
例如 - 如果您根据传递的对象数量显示字符串编辑器的集合,则 .cshtml 文件中的代码将根据该数字而改变。
@foreach(var item in Model.Items)
{
@EditorFor(x=>item.Example)
}
将被替换为
<input type="text" id="Item_0_Example" name="Item_0_Example"/>
<input type="text" id="Item_1_Example" name="Item_1_Example"/>
<input type="text" id="Item_2_Example" name="Item_2_Example"/>
因此,更改您的基本 html 代码。
在您链接的示例中 - 如果页面被刷新,视图将返回其原始状态。
【讨论】: