Java 编辑文本文件dojo
我在学道场和乞丐。我想使用Dojo从界面加载和编辑一个文本文件。请告诉我dojo中的哪个组件可以满足此要求。根据我对评论的回答,我的理解是您希望:Java 编辑文本文件dojo,java,javascript,dojo,ejb-3.1,Java,Javascript,Dojo,Ejb 3.1,我在学道场和乞丐。我想使用Dojo从界面加载和编辑一个文本文件。请告诉我dojo中的哪个组件可以满足此要求。根据我对评论的回答,我的理解是您希望: 在网页上的表单中输入文件名 然后,Dojo将从您的服务器加载该特定文本文件 然后,文件需要以某种编辑成分显示在屏幕上 然后,用户需要该工具将文件发回服务器 我本以为最好的方法是使用获取文本文件,然后再次使用它将其发回。您可以通过各种方式进行选择和显示 一个非常粗糙的解决方案是: <form data-dojo-type="dijit/form/
<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>
得到
要求([
“dijit/注册表”,
“dojo/请求”
],函数(注册表,请求){
var fileName=registry.byId(“fileName”).get(“value”);
请求(文件名{
“handleAs”:“文本”
}).然后(功能(内容){
registry.byId(“内容”).set(“值”,内容);
});
});
发送
要求([
“dijit/注册表”,
“dojo/请求”
],函数(注册表,请求){
var content=registry.byId(“content”).get(“value”);
请求(“myhandler.php”{
“方法”:“发布”,
“数据”:{
“内容”:内容
}
}).然后(功能(内容){
//应对回应
});
});
这将加载一个文本文件,其中包含您在文本框中输入的文件名(单击“获取”后)。内容将加载到文本区域进行编辑,并可通过单击“发送”将其发送回服务器脚本
正如我所说,“这是一个非常粗糙的例子”。但是,它显示了如何使用从服务器接收和发布信息。显然,您需要一个更复杂的解决方案,在适当的时候隐藏/显示小部件。您可能希望用通过服务器代码填充的某种组合来替换文件名文本框…等等
我建议您封装整个操作,而不是在标记中声明它。您可以使用从服务器加载json文件来填充组合框以选择该文件。您还需要确保发回的信息来自可信的来源
重要仅当文本文件和您的网页位于同一域中时,此选项才有效。它不适用于跨域请求。如果你想跨域,你需要创建一个json解决方案。你为什么要求dojo??如果java已经有了操作文本文件的选项,那么我寻找dojo的原因是因为我希望从用户界面编辑文件并将其保存回去。请告诉我其他的方法来满足这个问题。这个问题严重缺乏细节。这个文本文件是如何获得的?从您的服务器;来自另一台服务器;通过网络服务;用户上传;输入文本字段…你在找什么?你已经试过什么了?我有一个界面,我在我的服务器上输入可用的文件名,并希望将文件内容加载到我的界面中。编辑同一文件时,我的文件需要上传/保存回我的服务器。我明白Garry提到dojo做不到。