此代码有两个名称相同但值不同的链接。如果我点击第一个链接,我想得到价值10.是否可以使用链接提交()的JavaScript?
<form name="listpages" action="page.php" method="post">
<input type="hidden" name="pgnum" value="10">
<a href="javascript: document.listpages.submit()"></a>
<input type="hidden" name="pgnum" value="20">
<a href="javascript: document.listpages.submit()"></a>
</form>
提前致谢
答案 0 :(得分:2)
没有。但是您可以使用此代码来实现所需的结果。:
<form name="listpages" action="page.php" method="post">
<input type="submit" name="pgnum" value="10">
<input type="submit" name="pgnum" value="20">
</form>
JavaScript方式。我不明白你为什么要坚持使用JS。当用户禁用JavaScript时(例如,使用NoScript),您的代码将被破坏;
<form name="listpages" action="page.php" method="post">
<input type="hidden" id="pgnum1" value="10">
<a href="javascript:document.getElementById('pgnum1').name='pgnum';document.listpages.submit()">Option 1</a>
<input type="hidden" id="pgnum2" value="20">
<a href="javascript:document.getElementById('pgnum2').name='pgnum';document.listpages.submit()">Option 2</a>
</form>
答案 1 :(得分:0)
为什么不使用单个隐藏输入并通过超链接设置它的值:
<form name="listpages" action="page.php" method="post">
<input type="hidden" name="pgnum" value="10">
<a href="#" onclick="document.listpages.pgnum.value = 10; document.listpages.submit(); ">10</a>
<a href="#" onclick="document.listpages.pgnum.value = 20; document.listpages.submit(); ">20</a>
</form>
答案 2 :(得分:0)
您可以使用单个表单并将其与某些javascript代码结合使用,以使用相应的页码提交表单:
<form name="listpages" action="page.php" method="post">
<input type="hidden" name="pgnum" value="1">
</form>
<script type="text/javascript">
function submitPageForm(pageNo) {
var form = document.forms.namedItem("listpages");
form.elements.namedItem("pgnum").value = pageNo;
form.submit();
}
</script>
<a href="javascript: submitPageForm(20);"></a>
<a href="javascript: submitPageForm(30);"></a>
...
但请注意,对于网站,实际上建议使用 GET 参数来切换页面,内容项等。
以下是在 GET 和 POST 之间进行选择的非常好的指南:http://www.w3.org/2001/tag/doc/whenToUseGet.html
最后,如果您决定切换到GET,则根本不需要表单。即你可以简单地写一下:
<a href="page.php?pgnum=20"></a>
<a href="page.php?pgnum=30"></a>
...