2
这可能是一个迟缓的问题,但是在提交表单时,是否有一种模仿锚点标记行为的优雅方式?我希望我的用户能够在提交表单时按住控制键,并在新窗口中打开结果。现在我正在使用一种时髦,不可靠的javascript解决方法,我很尴尬地在这里发布。任何帮助表示赞赏。提交表单时模仿锚点行为(当提交'ctl'时出现新窗口)
这可能是一个迟缓的问题,但是在提交表单时,是否有一种模仿锚点标记行为的优雅方式?我希望我的用户能够在提交表单时按住控制键,并在新窗口中打开结果。现在我正在使用一种时髦,不可靠的javascript解决方法,我很尴尬地在这里发布。任何帮助表示赞赏。提交表单时模仿锚点行为(当提交'ctl'时出现新窗口)
如果你使用jQuery,那么你可以这样做。比方说,你有形式
<form id="test">
(...)
<input type="submit" id="test_submit" />
</form>
绑定和keyup
事件,像这样
$('#test').keydown(function(e) {
if (e.keyCode == /* here put the key code of CTRL which I don't remember */)
$(this).data('ctrl', true);
});
$('#test').keyup(function(e) {
$(this).data('ctrl', false);
});
,然后把手上的click事件提交按钮
$('#test_submit').click(function(e) {
e.preventDefault();
// do the serialization and post via AJAX
if ($('#test').data('ctrl'))
{
// do the new window creation
}
else
{
// update this window url
}
});
我希望这工程,因为我没有测试它。 :)
没有很好的工作,但它做了一些小调整的伎俩。像往常一样,jQuery提供了一个更加优雅的方式来完成相同的工作。谢谢你让我走上正确的道路! – Stanton 2012-02-11 00:37:39