Я изучаю додзё и начинающего. Я хотел бы загрузить и отредактировать текстовый файл из интерфейса с помощью Dojo. Пожалуйста, назовите меня, какой из компонентов в додзё хватит.Редактирование текстового файла dojo
ответ
От ответа на мой комментарий, я понимаю, что вы хотите:
- Введите имя файла в форму на веб-странице.
- После этого Dojo загрузит этот конкретный текстовый файл с вашего сервера.
- Затем файл должен отображаться на экране в виде компоновщика редактирования.
- Затем пользователю требуется средство для публикации файла обратно на сервер.
Я бы подумал, что лучший способ - использовать dojo/request, чтобы получить текстовый файл, а затем использовать его снова, чтобы отправить его обратно. Вы можете различать dojo dijits для выбора и отображения.
очень сырое решение будет:
<form data-dojo-type="dijit/form/Form">
<input type="text" id="fileName" data-dojo-type="dijit/form/TextBox" />
<button data-dojo-type="dijit/form/Button" type="button">Get
<script type="dojo/on" data-dojo-event="click">
require([
"dijit/registry",
"dojo/request"
], function(registry, request) {
var fileName = registry.byId("fileName").get("value");
request(fileName, {
"handleAs": "text"
}).then(function(content){
registry.byId("content").set("value", content);
});
});
</script>
</button><br /><br />
<textarea id="content" data-dojo-type="dijit/form/TextBox"></textarea>
<button data-dojo-type="dijit/form/Button" type="button">Send
<script type="dojo/on" data-dojo-event="click">
require([
"dijit/registry",
"dojo/request"
], function(registry, request) {
var content = registry.byId("content").get("value");
request("myhandler.php", {
"method": "post",
"data": {
"content": content
}
}).then(function(content){
// deal with the response
});
});
</script>
</button>
</form>
Это позволит загрузить текстовый файл с именем файла вы можете ввести в текстовом поле (после нажатия получить). Содержимое загружается в текстовое поле для редактирования и может быть отправлено обратно на сценарий сервера, нажав отправить.
Это, как я уже сказал, «очень грубый пример». Тем не менее, он показывает использование dojo/request для приема и публикации информации на сервере. Очевидно, вам нужно более сложное решение, которое скрывает/показывает виджеты в подходящий момент. Вероятно, вы захотите заменить текстовое поле с именем какого-то комбо, заполненного кодом вашего сервера ... и т. Д.
Я бы предложил вам write your own widget, чтобы инкапсулировать всю операцию, а не объявлять все в разметке , Вы можете использовать dojo/request для загрузки json-файла с сервера, чтобы заполнить поле со списком, чтобы выбрать файл. Вы также хотите, чтобы информация, отправляемая обратно, была получена из надежного источника.
Важно! Это будет работать только в том случае, если текстовый файл и ваша веб-страница находятся в одном домене. Он не будет работать для междоменных запросов. Если вы хотите сделать кросс-домен, вам нужно создать json-решение.
Почему вы спрашиваете о додзе ?? если java уже имеет возможность манипулировать текстовым файлом – Garry
Причина, по которой я ищу dojo, - это то, что я хочу отредактировать файл из пользовательского интерфейса и сохранить его обратно. Пожалуйста, предложите мне любой другой способ этого. – skanda
Этот вопрос серьезно отсутствует в деталях. Как этот текстовый файл получен? С вашего сервера; с другого сервера; через WebService; загрузка пользователя; ввод в текстовое поле ... что вы ищете? Что вы уже пробовали? –