2010-05-27 92 views
2

是否可以从具有预定义内容的PHP打开窗口?很明显,您可以如何从构建现有页面的JavaScript链接打开窗口,或者只需从引用现有页面的常规标签中执行target = _blank。不过,我产生了一点内容,并希望这些内容在一个新的链接打开(或传输到浏览器) -带动态内容的打开窗口

像(显然伪代码!):

$content = "Hello World. <br />Nice to meet you!"; 

<a href="#" target="_blank" content=$content>Open up!</a> 

是这可能吗? 谢谢!

回答

11

那么,直接回答你的问题是,你不能直接从PHP执行它,因为它是打开窗口的浏览器。你可以,但是,有你的页面打开一个窗口,获取文档对象,并写它:

var w = window.open("Surprise", "#"); 
var d = w.document.open(); 
d.write("<!DOCTYPE html><html><body>Hello World</body></html>"); 
d.close(); 

取而代之的是简单的字符串“Hello World”,当然你的PHP脚本可以放在一起为所欲为的。此外,如果需要,Javascript代码本身可以根据页面状态,表单域等动态生成内容。

请注意,您无法保证新窗口不会是新选项卡,而是不是新选项卡与<a><form>标签中的“目标”发生的情况不同。

编辑 —哦也:如果您尝试使用window.open的代码之外的在响应中运行的“点击”,浏览器可能会认为你想显示弹出式广告,并阻止它。

+0

非常感谢! 我最终将数据作为帖子传递,然后解析发布数据,但我会给你的方法一个镜头,它看起来更干净。 谢谢! – julio 2010-05-27 20:31:13