在iMacros javascript中选择数据源文件

时间:2016-03-27 17:53:54

标签: javascript imacros

我正在尝试制作iMacros脚本,以便用户在开始时选择数据源文件。

这是我发现的一个解决方案,它可行:

var sourcefile = prompt(“输入文件位置”);

然后我在脚本中使用变量{{sourcefile}}。

宏+ =“SET!DATASOURCE {{sourcefile}}”+“\ n”;

问题是在这种情况下,用户必须输入完整路径和文件名。 我想更改javascript代码,以便用户可以使用“浏览”按钮,并可以通过单击选择数据源文件。

2 个答案:

答案 0 :(得分:1)

尝试使用以下代码而不是prompt - 对话:

var sourcefile = imns.Dialogs.browseForFileOpen("Enter file location");
if (sourcefile)
    sourcefile = sourcefile.path;

答案 1 :(得分:0)

我认为文件类型(如* .csv)更好:

// imacros imns.Dialogs.browseForFileOpen() does not provide a way to appendFilter 
var fp = Components.classes["@mozilla.org/filepicker;1"].createInstance(Components.interfaces.nsIFilePicker);

// initial directory use Macros folder as defined in iMacros Preferences
fp.displayDirectory = imns.Pref.getFilePref('defsavepath');//DataSources=defdatapath
fp.init(window, "Select a File", Components.interfaces.nsIFilePicker.modeOpen);
fp.appendFilter("CSV File (*.csv)", "*.csv");

var sourcefile;
if(fp.show() == 0){
    sourcefile = fp.file.path;
}