jsoneditor/examples/09_readonly_text_mode.html

74 lines
1.6 KiB
HTML
Raw Normal View History

2017-04-09 04:37:47 +08:00
<!DOCTYPE HTML>
<html lang="en">
2017-04-09 04:37:47 +08:00
<head>
<!-- when using the mode "code", it's important to specify charset utf-8 -->
<meta charset="utf-8">
<title>JSONEditor | Switch mode</title>
2017-04-09 04:37:47 +08:00
<link href="../dist/jsoneditor.css" rel="stylesheet" type="text/css">
<script src="../dist/jsoneditor.js"></script>
<style type="text/css">
body {
font: 10.5pt arial;
color: #4d4d4d;
line-height: 150%;
width: 500px;
}
code {
background-color: #f5f5f5;
}
#jsoneditor {
width: 500px;
height: 500px;
}
</style>
</head>
<body>
<p>
Switch editor mode using the mode box.
Note that the mode can be changed programmatically as well using the method
<code>editor.setMode(mode)</code>, try it in the console of your browser.
</p>
<div id="jsoneditor"></div>
<script>
const container = document.getElementById('jsoneditor')
2017-04-09 04:37:47 +08:00
const options = {
2017-04-09 04:37:47 +08:00
mode: 'text',
2017-04-12 04:55:55 +08:00
modes: ['text', 'code'],
2017-04-15 18:28:46 +08:00
onEditable: function (node) {
if (!node.path) {
// In modes code and text, node is empty: no path, field, or value
// returning false makes the text area read-only
return false;
}
2017-04-09 04:37:47 +08:00
},
onError: function (err) {
alert(err.toString())
2017-04-09 04:37:47 +08:00
},
onModeChange: function (newMode, oldMode) {
console.log('Mode switched from', oldMode, 'to', newMode)
2017-04-09 04:37:47 +08:00
}
}
2017-04-09 04:37:47 +08:00
const json = {
2017-04-09 04:37:47 +08:00
"array": [1, 2, 3],
"boolean": true,
"null": null,
"number": 123,
"object": {"a": "b", "c": "d"},
"string": "Hello World"
}
2017-04-09 04:37:47 +08:00
const editor = new JSONEditor(container, options, json)
2017-04-09 04:37:47 +08:00
</script>
</body>
</html>