所以我是新的淘汰賽,我在網上找不到直接的答案。這是情況。我在asp.net mvc partial視圖中有一個下拉列表。它通過具有值和@Html助手的視圖模型填充,特別是dropdownlistfor。我在Web上看到的示例似乎需要依賴的可觀察數組,但下拉列表的所有值均在JavaScript(硬編碼)/中設置,而不是通過服務器端代碼設置。我只想在選定的值發生變化時觀察下拉列表的輸出(即:對於實時預覽類型功能)。任何幫助將不勝感激,因爲我確信我錯過了簡單的事情。謝謝!淘汰賽通過ASP.NET MVC服務器代碼填充下降代碼
回答
是這樣的?
<select data-bind="event: {change: mySelectChange},value:myValue">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<span data-bind="text:myText"></span>
<script>...
function ViewModel()
{
var self = this;
this.myValue = ko.observable();
this.myText = ko.observable();
this.mySelectChange = function (obj, evt) {
var item = $(evt.currentTarget);
self.myText(item.find('option:selected').text());
};
}
...
</script>
我想我可能找到了我在找的東西,但我不能說我喜歡它。 http://forums.asp.net/t/1817193.aspx?Knockoutjs+with+Dropdown+list+on+asp+net+mvc3 也許最好的做法是使用JSON操作方法來獲取我的值爲下拉菜單,然後按照上面引用的Knockout教程? ASP.NET MVC開發人員使用的最佳實踐是什麼,因爲我預料這將成爲常見的KO場景? – Shawn
對不起,我誤解了你最初的問題。您正在尋找所選文字?我已經使用jQuery來獲取文本。我將用一個示例編輯我的答案 – mrpotocnik
我只是好奇,我認爲這會起作用,但它不是針對Knockout正在嘗試建立的MVVM租戶? – Shawn
- 1. 解釋一些淘汰賽代碼
- 2. 淘汰賽:valueUpdate從javascript代碼
- 3. 淘汰賽由淘汰賽
- 4. 通過代碼+淘汰賽更新數組中的值
- 5. 通過代碼填充ITemplate
- 6. 從服務器端代碼加載淘汰賽js模型的最佳實踐
- 7. 淘汰賽optionsText編碼
- 8. 淘汰賽淨化號碼
- 9. 淘汰賽asp.net的MVC視圖模型JSON在頁面的源代碼
- 10. 如何使淘汰賽填充
- 11. 預填充的observableArray在淘汰賽中
- 12. 淘汰賽通$父
- 13. 淘汰賽過濾
- 14. 淘汰賽foreach服務器端
- 15. 如何通過價值淘汰賽js
- 16. 淘汰賽:的foreach不與asp.net的MVC
- 17. 淘汰賽在ASP.NET MVC視圖結合
- 18. ASP.NET MVC4和淘汰賽js
- 19. 服務器端驗證與Spring MVC和淘汰賽JS
- 20. 淘汰賽難
- 21. 在淘汰賽
- 22. 淘汰賽JS:foreachBinding
- 23. 淘汰賽JS設置optionsValue破壞我的代碼
- 24. MIX 11淘汰賽的代碼示例和我的錯誤
- 25. 更改微風/淘汰賽實體屬性代碼
- 26. 修復代碼套接口io和淘汰賽
- 27. 錶行被刪除,由於淘汰賽代碼
- 28. 我的淘汰賽代碼未更新我的視圖
- 29. 簡單的淘汰賽示例代碼上的jsfiddle
- 30. 淘汰賽js applybinding
那麼你真正的問題是什麼?實施span標籤更新時遇到問題嗎?請包括您已經嘗試過的代碼並指出問題所在。 – PatrickSteele
問題是如何在一般情況下取消這個問題。我沒有任何代碼,因爲我正在搜索SO和網絡來解決這個問題。基本上,情況是如果通過服務器端代碼填充下拉列表的值,那麼我該如何創建本示例中指示的可觀察數組http://knockoutjs.com/documentation/options-binding.html,以便我可以更新跨度與選定的值?一個簡單的例子就是一個等級字段。如果我的成績是7-12,而用戶點擊了8,我希望跨度文本更新爲。我不需要在JS中提供我的下拉值。 – Shawn