【问题标题】:Choose Datasource file in iMacros javascript在 iMacros javascript 中选择数据源文件
【发布时间】:2016-03-27 17:53:53
【问题描述】:

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

这是我找到的一个解决方案,它有效:

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

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

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

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

【问题讨论】:

    标签: javascript imacros


    【解决方案1】:

    试试下面的代码,而不是prompt-dialogue:

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

    【讨论】:

    • 太棒了!谢谢Shugar,太棒了:)
    【解决方案2】:

    我认为文件类型(如 *.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;
    }
    

    【讨论】:

    • 这很好用。我喜欢将默认文件夹更改为 Datasources 的可能性。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多