在我的應用程序中,我有一個文字區域以及一個包含代碼鏡像支持的語言的選擇列表。 有人能告訴我如何在用戶從選擇列表中選擇一種語言時更改代碼鏡像編輯器的模式(編程語言)嗎?我是否需要手動爲選定模式加載js文件?是否有任何設置需要在飛行中改變?我是否需要爲所有支持的模式預加載js文件?謝謝!如何根據SelectList中的選定值更改CodeMirror編輯器的模式
2
A
回答
1
1
做它以這樣一種方式:
function loadModeForSelectedOption() {
var script = $("#mode option:selected").attr('data-script');
var mode = $("#mode option:selected").attr('data-mime-type');
loadJS(script, function() {
myCodeMirror.setOption("mode", mode);
});
}
function loadJS(src, callback) {
var s = document.createElement('script');
s.src = src;
s.async = true;
s.onreadystatechange = s.onload = function() {
var state = s.readyState;
if (!callback.done && (!state || /loaded|complete/.test(state))) {
callback.done = true;
callback();
}
};
document.getElementsByTagName('head')[0].appendChild(s);
}
,並選擇列表與語言(舉幾個例子):
<option value=108
data-mime-type="text/x-csrc"
data-script="/Scripts/codemirror-2.37/mode/clike/clike.js">
C
</option>
<option value=110
data-mime-type="text/x-csharp"
data-script="/Scripts/codemirror-2.37/mode/clike/clike.js">
C#
</option>
<option value=109
data-mime-type="text/x-c++src"
data-script="/Scripts/codemirror-2.37/mode/clike/clike.js">
C++
</option>
相關問題
- 1. 如何在CodeMirror編輯器中設置Java模式?
- 2. 的SelectList選定值
- 3. 如何根據值更改下拉列表的選定值
- 4. 如何根據條件更改模型可編輯atttribute
- 5. 如何根據選擇選項更改變量的值:選中
- 6. 根據數據表中的單選按鈕更改可以編輯特定列
- 7. 如何編輯寄存器WITH模式更改鍵的內容?
- 8. jqGrid。如何在編輯模式下根據行中的當前值更改下拉列表的列表?
- 9. 改變MVC的SelectList選定值
- 10. 如何重置Codemirror編輯器?
- 11. 如何在Eclipse編輯器模板中更改日期格式?
- 12. 如何通過javascript設置CodeMirror編輯器的值?
- 13. 如何通過javascript設置CodeMirror編輯器的值?
- 14. 面板中的CodeMirror編輯器
- 15. JasperReports:根據字段更改模式值
- 16. 如何根據值更改css樣式
- 17. 根據選擇器更改css值?
- 18. 在gridview中根據gridview(編輯模式)中dropdownlist的選定值爲gridview中的其他列設置值
- 19. 如何根據其綁定值更改listitem的視覺樣式?
- 20. 編輯數據庫中的選定值
- 21. 根據UserInterface中的值更改綁定
- 22. 如何根據特定值更改Excel表中的值
- 23. (Javascript)如何根據下拉列表中選定的選項更改變量值?
- 24. 更改不可編輯jcombobox中選定值的顏色
- 25. 如何使用formslib更改MOODLE中的默認編輯器值?
- 26. 如何更改TinyMCE編輯器中控制按鈕的樣式
- 27. 如何更改Dart eclipse插件編輯器的編輯器樣式
- 28. 如何根據選擇的選項更改值?
- 29. 如何根據Bash中的VI模式更改光標形狀?
- 30. 根據選擇更改div的值
我得到了NPM的CodeMirror,但它沒有與loadmode –
我絕對不會,你只需要確保你實際加載我鏈接的插件。 – Marijn
是的,文檔有點不準確,因爲它表示meta.js位於模式文件夾中,但loadmode.js位於addon/mode/loadmode.js中,即使它們都表示它們位於模式文件夾中 –