给button做一个和 <a href="abc.jsp" target="_blank">一样的可以出一个新页面的功能,怎么实现?

空指针 发布于 2012/04/10 14:56
阅读 10K+
收藏 1

给button做一个和 <a href="abc.jsp" target="_blank">一样的可以出一个新页面的功能,怎么实现?

注:不要把<a>变成button的样式。

以下是问题补充:

@空指针:button 如下: <input type="button" name="Submit" value="abcd" class="button" onClick="funform('<%=request.getContextPath()%>/Hospital.action?getProgressnote')"> <input type="button" name="Submit" value="abc" class="button" onClick="funform('<%=request.getContextPath()%>/Hospital.action?printStandingorder')"> (2012/04/10 15:20)
加载中
0
qycms_cn
qycms_cn

<form action="your_url" target="_blank" method="get">

<button type="submit">打开一个</button>

</form>

 

空指针
空指针
主要是from的action是动态的,且from中有好几个button,这几个button中还有不需要target="_blank"的。
0
b
buptwhis
重点在于
target="_blank"
空指针
空指针
0
deleted
deleted
<button type="submit" onclick="window.open('http://www.oschina.net/','_blank');">oschina</button>
deleted
deleted
回复 @空指针 : 一样可以的 http://jsfiddle.net/FL7gx/
空指针
空指针
请看:补充话题说明。
空指针
空指针
onclick被占用了。
0
晕dows
晕dows
<input type="button" name="Submit" value="abcd" class="button" 
onClick="funform('...');window.open('http://oschina.net','_blank')"/>

晕dows
晕dows
当然,我说的不包含ajax,那是另外一回事了
晕dows
晕dows
回复 @空指针 : 反正我是发现了,好多新人最容易犯的错误就是不能区分服务器的代码是什么时候运行的,浏览器的js是什么时候运行的,经常会有人以为这些是交叉着运行的,很明显不科学吗
空指针
空指针
回复 @晕dows : 实战开发不在三个月新手,求指导!
晕dows
晕dows
回复 @空指针 : 又是一个服务器端和浏览器端不分的。。。你捋清楚每一步发生的时间了么
空指针
空指针
funform()是动态传action的,在action中:return new ForwardResolution("/files/abc.jsp");已转发。window.open('url','_blank')时,url如何获得?
0
晕dows
晕dows
话说你 funform这个方法是干什么用的
空指针
空指针
主要是传一个动态的action值(参数:i),并判断checkbox选中唯一,若唯一提交表单。
0
晕dows
晕dows
那你就把window.open放到你的 funform 方法里面就是了,需要提交表单,就提交表单,需要弹页面,就弹页面
0
Andre.Z
Andre.Z
页面createElement一个a,存在的话,就不创建。动态设置link的src和target,并触发link的click事件。window.open()的话,容易被浏览器给禁用掉。用link做的话,浏览器根本不管的,通过链接打开新页面是必须的。你用form的话,也是一样,form都已经存在了,js修改下form的action和target,并触发form的submit事件。js弄弄就好了。
0
空指针
空指针

引用来自“Andre.Z”的答案

页面createElement一个a,存在的话,就不创建。动态设置link的src和target,并触发link的click事件。window.open()的话,容易被浏览器给禁用掉。用link做的话,浏览器根本不管的,通过链接打开新页面是必须的。你用form的话,也是一样,form都已经存在了,js修改下form的action和target,并触发form的submit事件。js弄弄就好了。
谢谢,尝试中。。。
0
黄龍
黄龍
就是嘛!提交表单前在JS中判断一下,重新定义一下form中target的值不就好了~
0
cswy
cswy

通过css,把超链接  伪装成button就Ok了

空指针
空指针
呵呵 谢谢! 问题中我已经注明不要这种方式实现了。
返回顶部
顶部