怎样用javascript激活IE的保存对话框?(100分)

  • 主题发起人 主题发起人 cAkk
  • 开始时间 开始时间
C

cAkk

Unregistered / Unconfirmed
GUEST, unregistred user!
是IE的保存对话框,不是TWebBrowser的哦!
而且是用javascript或者VBScript实现的。

多谢!
 
我不知道说清楚了没有,就是在网页里面镶嵌一段脚本,能够激活IE窗口的“Save”对话框
 
这个功能在script不能实现的吧?还没看到网上有相似的例子
 
同意,应该不可能
 
要是能的话,ie的安全性就太差了

网页上放一个webbrowser控件试试吧
 
胡说,肯定可以,我就见过n多调用,
cAkk你到msdn的web开发技术方面去差ie的属性和方法上查吧,
应该是类似下面的语法
windows.external.saveasdialog

或者你在msdn上搜索一下external
 
execCommand Method

--------------------------------------------------------------------------------

Executes a command on the current document, current selection, or the given range.

Syntax

bSuccess = object.execCommand(sCommand [, bUserInterface] [, vValue])
Parameters

sCommand Required. String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.
bUserInterface Optional. Boolean that specifies one of the following values: false Default. Does not display a user interface.
true Displays a user interface, if the command supports one.

vValue Optional. Variant that specifies the string, number, or other value to assign. Possible values depend on sCommand .

Return Value

Boolean that returns one of the following values:

true The command was successful.
false The command was not successful.

Remarks

Do not invoke the execCommand method until after the page loads.

The bUserInterface and vValue parameters may be required depending on the command being executed.

Standards Information

There is no public standard that applies to this method.

Applies To

[ Object Name ]
Platform Version
Win16:
Win32:
Unix:
Mac:
Version data is listed when the mouse hovers over a link, or the link has focus.
document, controlRange, TextRange
Move the mouse pointer over an element in the Applies To list to display availability information for the listed platforms. Internet Explorer does not expose this member on platforms that are not listed.

See Also

queryCommandEnabled, queryCommandIndeterm, queryCommandState, queryCommandSupported, queryCommandValue

execommand命令支持saveas操作字符串
可能是document.execcommand('saveas',....)的用法;
 
显示SaveAs对话框是可以的,使用hubdog的方法,但是只能以“仅HTML”方式,而不能
是“全部”方式。
 
这个我自己解决了,不算不算,再来一个:
如果是一个多frame的网页,弹出对话框後,保存的网页
是frame的主文件,就是没内容的那个frame结构定义文件,
无法保存具体的frame页面,请问右和解决办法?

附上体的解决办法:
hobdog的方法机本正确,但是忽略了一点,只有Webbrowser
这个COM对象才有execcommand这个方法,而脚本语言能够访问
的DOM对象是没有这个方法的,所以关键就是将一个Webbrowser
对象插入到当前页面里面,然后调用该对象的execcommand方法
即可。向当前页面插入一个webbrowser对象可以用document的
insertxxxx之类的方法,插入COM对象用<OBJECT>标记。。。。
抱歉源代码部在身边,无法写出来,不过说的已经够请除了。

这个问题暂时给hobdog 50分。剩下的50分请继续回答后面的问题。
分不够我再加!
 
cAkk老板,你的那个《Delphi 5.X ADO_MTS_COM+高级程序设计篇》好象
没有全嘛?
后面精彩的都没有了。
 
我在Form中用一个Twebbrowser控件显示指定url的页面,怎么才能够把页面保存到本地硬盘,
我用了Twebbrowser的ExecWB方法,编译时提示:“There is no overloaded Version of 'ExecWB'
that can be called with this arguments”,请问我该怎么做?
 
上面的已经解决了,怎样保存到程序指定的路径,不弹出保存对话框呀,
我试着把OLECMDID_saveas改成OLECMDID_save执行时没有报错,可实际上根本就没有保存。
 
watter: 不弹出保存对话框不太可能,因为这样太不安全了。
 
后退
顶部