2
我使用Edraw Office Viewer组件打开&编辑文件。我想将我的文件保存到我的目的地点,所以我使用JavaScript来保存文件。但我坚持一点。我在下面显示我的代码以使用JavaScript保存文档。如何在ZK MVVM中使用javascript调用java方法?
function f_saveDocument(){
if(document.OA1.IsOpened)
{
var saveAsFileName = document.getElementById('hdnFileName').value;
alert(saveAsFileName);
var fileFormat = saveAsFileName.substring(saveAsFileName.lastIndexOf("."));
if(fileFormat == '.docx') {
var toUnLockFile = 'MergeTest'+fileFormat;
var tempFileLocation = document.OA1.GetTempFilePath(saveAsFileName);
var tempToUnLockFileLocation = document.OA1.GetTempFilePath(toUnLockFile);
document.OA1.SaveAs(tempFileLocation,12);
document.OA1.SaveAs(tempToUnLockFileLocation,12);
document.OA1.HttpInit();
document.OA1.HttpAddPostFile(tempFileLocation);
document.OA1.HttpPost("");
document.OA1.ClearTempFiles();
} else {
alert("asdsa");
document.OA1.HttpInit();
document.OA1.HttpAddPostOpenedFile(saveAsFileName);
**zAu.send(new zk.Event(zk.Widget.$('$btnSave'), "saveFile", {'' : {'data' : {'nodeId': ''}}}, {toServer:true}));**
alert("moved");
}
}
在JSP页面的情况下,我可以把我的JSP的URL在HttpPost
但在ZK的情况下,如何从这个JavaScript到Java方法移动。所以要解决这个问题,我正在使用Widget调用saveFile()
方法,该方法位于我的viewmodel
类中。但是zAu.send
工作不正常。任何人都可以告诉其他解决方案在ZK MVVM中通过JavaScript调用我的Java方法。
感谢Nabil的帮助! – psisodia 2013-02-20 07:08:09
Nabil:我还有一个问题...有什么办法可以在HttpPost中传递zk url吗?其实我想在MultipartRequest的java方法中获取请求。 MultipartRequest mr = new MultipartRequest(request,savePath,50000000); – psisodia 2013-02-20 09:58:43