2014-01-29 60 views
-1

因此,有form标签使用的一个普通的例子:要使表单标签与提交不会打开一个新页面/窗口

<form name="form_name" action="${url}" method="POST">` 
    <input type="text" name="email_input" id="email_input" class="input"> 
    <input type="submit" name="send" class="send_ticket"> 
</form> 

你怎么能看到的,我用真子在动作值和Python网络框架CherryPy。 所以,这段代码工作正常:我按下按钮,数据被发送到服务器,然后打开一个新的选项卡。但我要求在浏览器中不显示新标签。我想保留在当前标签上。

我该怎么办?谢谢。

回答

0

该任务使用redirectToRoute函数解决。

1

既然你完全改变了你的问题,我正在更新我的答案。

默认情况下,所有表单文章发生在同一浏览器窗口

你所描述的对我来说似乎是非常不规律的行为。你是否在弹出窗口(如colorbox或jquery对话框)中显示表单而不提及它?或一个iframe?

如果不是,您可以尝试将target="_self"添加到您的表单标记中,但请注意,它已被弃用,并且不会被所有浏览器支持。

<form name="form_name" action="${url}" method="POST" target="_self">` 
    <input type="text" name="email_input" id="email_input" class="input"> 
    <input type="submit" name="send" class="send_ticket"> 
</form> 

最后,你可以尝试使用Ajax而不强制加载新页面发布表单数据。

Here is a nice Tuts+ tutorial about Ajax form post.

希望这有助于!

+0

谢谢您的回答,但'target =“_blank”'表示:_响应显示在新窗口或tab_中。但我不需要显示新的标签或窗口。 –

+0

所以你需要它在同一页?这是默认的......我很困惑,因为你问的是 – Yani

+0

我更新了这篇文章。所以,有一个逆向任务。一个新标签总是显示出来,我不需要它。我想留在我的当前标签(按钮在哪里) –

相关问题