我有一個非常類似於這個問題how to call javascript function from Controllers file in MVC?但提供的答案不是我所需要的。從ASP.NET MVC控制器觸發/調用JavaScript/jQuery事件
我想要做的是這個,我想返回一個視圖,但是我想要觸發/調用一個javascript/jquery事件。比如在我的控制器:
public ActionResult List()
{
// do some processing
// Call the javascript/jquery event
return this.View();
}
現在,我想這個問題的方法是使用的觀點一樣,包包:
public ActionResult List()
{
ViewBag.MovePanel = "yes";
return this.View();
}
然後在我看來,我有soemething像:
<input type="hidden" name="move" id="move" value="<%: (string)ViewBag.MovePanel %>" />
<script type="text/javascript">
$('#move').change(function() {
console.log('changed');
});
該值被設置爲「yes」,但「change」事件永遠不會被觸發。
我該如何實現我想要做的?
編輯: 按照達林的評論,這是我正在努力實現的。 我們正在嘗試創建一個類似於圖像輪播的形式輪播。所以,我想要做的是控制是否顯示下一個表單。
例如,一個典型的工作流程是這樣的:
- 說我是第一種形式是項目的名單上。我選擇和項目,然後點擊編輯。
- 然後發生的事情是列表窗體從視圖中隱藏(但未關閉),編輯窗體向用戶顯示。
- 用戶然後對窗體進行一些更改並嘗試保存。
- 如果沒有驗證錯誤,則編輯表單將關閉,並且之前的列表表單將顯示在視圖中。
因此,我遇到了最後一步的問題,即讓列表窗體進入視圖。
在更廣闊的背景下說,當我提交表單並且出現錯誤時,我應該能夠保持「編輯」表單在視圖中,而不是關閉它並且不顯示先前打開的「列表」表單。
我希望這是一個更清晰的解釋。
如果你需要這樣的東西,你的設計有一些根本性的錯誤。所以爲了幫助你解釋你的場景是什麼以及你想要達到什麼目的(並且不要說我試圖從控制器動作中調用一個javascript事件,因爲這沒有任何意義)。描述你的最終目標。 –
@Darin:公平點 – DavidS