提交链接 - 没有Javascript:Downns?
我前几天发现了一个启示。当试图通过使用图像创建提交按钮时,我遇到了一个问题,图片没有显示,但文字是value
。当时,这不是我想要的,但现在,当我回头看时,我看到了一些潜在的用途。提交链接 - 没有Javascript:Downns?
如果您需要将数据发送到另一个页面,但没有一个需要用户输入,您可以通过GET
或通过POST
的表单通过链接(或表格)发送。问题在于前者会创建丑陋的URL,而后者需要一个看起来不合适的submit
按钮。当然,我可以想出一个图像,但是如果我只想要可选文本。
所以,我开始玩了一下,Firefox似乎呈现了我想要的,作为提交表单的可点击链接。所有你需要做的就是删除从input type='image'
标签src
属性:
<form action='some_page' method='post'>
<input type='hidden' name='email_address' value='[email protected]' />
<input type='image' value='E-mail User' />
</form>
是否在其他浏览器这个解决方案的工作?这样做有什么缺点(除了明显的事实,即你的链接CSS没有正确应用)?
我喜欢使用实际链接(隐藏)的解决方案,该链接通过JavaScript与noscript标签内的按钮一起公开。
<form action="some_page" method="post">
<input type="hidden" name="email_address" value="[email protected]" />
<a href="#" class="submit-link" style="display: none;">E-mail User</a>
<noscript>
<input type="submit" value="E-mail User" />
</noscript>
</form>
$('submit-link').click(function() {
$(this).closest('form').submit();
return false;
})
.show();
感谢您的代码。这应该很好:-) – 2009-09-25 13:55:11
您可以改为通过JS动态提交表单,也可以使用透明或白色背景的常规提交按钮。
使用HTML 4.01严格,它在FF3.5上工作,但不在IE8或Chrome上。该链接的作品,但没有文字只是一个空白的地方缺少图像。
所以,这似乎是一个坏主意,因为它可能只适用于一个浏览器。对我来说这是一个非常大的缺点,除非你的唯一市场是用于Firefox浏览器,那么,继续吧,好主意。 :)
正如詹姆斯斯基德莫尔建议的那样,使用javascript做一个onclick很容易提交它作为一个职位。
我会建议不引人注目的JS,所以,如果有人没有JS,那么它将作为一个链接工作,做一个GET提交,但如果他们有JS,那么它会改变行为是POST没有丑陋网址更改。
或者,如前所述,图像的背景可以与表单背景融合。
感谢您在多个浏览器上检查它。我认为情况会如此,但由于我在Mac上,因此如果不安装虚拟机,我无法准确测试IE。 – 2009-09-25 13:55:54
没有必要使用图像输入,为什么不使用常规的提交按钮,应用一些严厉的造型,使其看起来像普通的文本?
<input type="submit" value="E-mail User" class="link">
<style>
input.link {
border: none;
background: none;
cursor: pointer;
/* etc */
}
</style>
您的示例代码有语法错误: 方法='后>(需要密切报价) – RMorrisey 2009-09-24 21:15:26
哎呀,我没仔细看不够。感谢您的支持! – 2009-09-25 13:54:20