我們需要創建同一類型的多個局部視圖,但是這個局部視圖具有javascript函數。我如何避免在每個局部視圖上定義此功能?我們不想在其他地方定義這個功能。帶剃刀的MVC3 - 避免局部視圖上的多個javascript函數定義
回答
移動function
的定義出來的部分,並進入一個global\external
JavaScript文件:
外部JS
function foo() {
/* ... code ... */
}
偏
foo();
或(取決於如何定義你可能想要的crea碲foo
一個實例):
var bar = new foo();
感謝您的回覆。我考慮過這個問題,但我想知道是否有另一種方法可以在沒有外部文件的情況下完成。 – kerzek 2012-03-20 03:15:41
你可以在***立即執行函數***中執行代碼,它將函數的變量封裝在它自己的範圍內...... – xandercoded 2012-03-20 03:24:21
我會強烈建議改變的解決辦法,允許一個外部的JavaScript referece。如果這不能完成,那麼以下可能會起作用。首先,我會認爲你正在做的事情,如:
/Views/Shared/MyModelPartial1.cs/
@model MyModel
<script type="text/javascript">
var a = "@Model.SomeStringProperty";
var b = @Model.SomeNumberProperty;
</script>
<span>Some Html!</span>
/Views/Shared/MyModelPartial2.cs/
@model MyModel
<script type="text/javascript">
var a = "@Model.SomeStringProperty";
var b = @Model.SomeNumberProperty;
</script>
<div>Different Html Than 1</div>
如果您試圖在兩個Partial之間共享此Javascript,請創建另一個可能如下所示的局部視圖:
個/Views/Shared/MyModelJavascript.cs/
@model MyModel
<script type="text/javascript">
var a = "@Model.SomeStringProperty";
var b = @Model.SomeNumberProperty;
</script>
/Views/Shared/MyModelPartial1.cs/
@model MyModel
@Html.Partial("MyModelJavascript", Model)
<span>Some Html!</span>
/Views/Shared/MyModelPartial2.cs/
@model MyModel
@Html.Partial("MyModelJavascript", Model)
<div>Different Html Than 1</div>
實際上,我只有一個局部視圖。它可以在多個視圖中使用。我想我會推薦你用全球/外部文件來做這件事。 – kerzek 2012-03-20 03:57:16
- 1. 局部視圖MVC3剃刀
- 2. 呼叫從剃刀代碼JavaScript函數在局部視圖
- 3. 剃刀視圖和局部視圖
- 4. MVC3剃刀:如何讓有條件加載的局部視圖?
- 5. Asp.net剃鬚刀的JavaScript避免對String
- 6. MVC3剃刀視圖PopUps
- 7. MVC3剃刀視圖引擎
- 8. MVC3剃刀局部視圖使用不同型號
- 9. asp.net mvc3剃刀,javascript
- 10. 剃刀局部視圖不渲染
- 11. 返回剃刀局部視圖
- 12. 剃刀視圖中的自定義類?
- 13. MVC3剃刀引擎
- 14. 如何避免MVC3中的剃鬚刀路徑錯誤警告?
- 15. ASP.NET MVC3中的視圖中的局部變量的簡單增量(剃刀)
- 16. 使用Aspx頁面作爲剃刀視圖的局部視圖
- 17. MVC3剃刀弱類型視圖?
- 18. MVC3剃鬚刀 - 模型和視圖
- 19. asp.net mvc3 /剃刀視圖最佳實踐
- 20. 在MVC3中登錄剃刀視圖
- 21. 帶有Javascript的剃刀
- 22. 在MVC3(剃刀)中重複的相同部分視圖
- 23. MVC3自定義VirtualPathProvider不渲染剃刀
- 24. C#MVC剃刀產品:Javascript結合的局部視圖上下文
- 25. 沒有佈局的剃刀視圖
- 26. 無法使用MVC3剃刀
- 27. MVC3剃刀多語言
- 28. MVC3剃刀Confirmationmail
- 29. MVC3剃刀:代碼塊
- 30. 顯示圖像第一個結果MVC3剃刀視圖的值
您可能還想考慮創建一個reusa局部視圖。 – jessegavin 2012-03-20 02:55:56