我目前正在与Sitecore MVC项目一起工作,其中在理解如何更改模型方面存在一些问题,该模型目前使用jQuery动态地由string tech
和string add
组成。
我的想法是拥有这样的索引文件
var global_var1 = "";
var global_var2 = "";
<div class = "upper">
<div class= "tech_field" >
@Model.tech = global_var1
</div>
<div class= "add_field" >
@Model.add = global_var2
</div>
</div>
然后使用jQuery做类似
$('upper').find('tech_field')
但是我如何准确地修改值或变量,我知道如何找到包含值但不包含确切变量的div
。
答案 0 :(得分:0)
@Model
是仅在生成页面时在服务器端定义的变量。在浏览器的客户端,您无权访问服务器端变量。
@Model.tech
在页面中的该位置呈现技术属性值。
所以这段代码:
<div class= "tech_field" >
@Model.tech = global_var1
</div>
如果@Model.tech
包含“技术财产的内容”,将呈现此内容:
<div class= "tech_field" >
Content of the tech property = global_var1
</div>
如果您想使用JavaScript来呈现模型属性值,可以这样做:
<script>
// Sets JavaScript variables with the content of server-side model property values
var model_tech = "@Model.tech";
var model_add = "@Model.add";
</script>
<div class="upper">
<div class="tech_field"></div>
<div class="add_field"></div>
</div>
<script>
$('.tech_field').text(model_tech); // Sets the DOM element value to the content of the JavaScript variable
var techValueFromDom = $('.tech_field').text(); // Reads the DOM to read the text.
</script>
但是,没有简单的方法可以调用Sitecore来从JavaScript代码更新存储在Sitecore项目中的数据。