jquery从文本链接提交表单

时间:2010-01-18 07:19:15

标签: jquery forms variables hyperlink submit

我正在尝试创建一个提交表单并从文本链接传递值的小表单。这是我到目前为止所拥有的...

<form id="calendar" name="calendar" action="" method="post">
<a href="<?php echo $next_month; ?>" class="submitCal">&raquo;</a>
</form>

<script type="text/javascript">
jQuery.noConflict();
jQuery('.submitCal').click(function () {
  jQuery("#calendar").submit();  
});
</script>

我希望href成为一个名为“时间”的表单变量,我只是不确定我是否朝着正确的方向前进......如果有人可以提供帮助,那就太棒了:)

干杯

3 个答案:

答案 0 :(得分:2)

你可以这样做:

jQuery('.submitCal').click(function () {
  var timeVar = jQuery("<input type='hidden' name='time'/>");
  timeVar.val(jQuery(this).attr("href"));
  jQuery("#calendar").append(timeVar).submit();  
  return false;
});

这将在表单中创建一个隐藏的表单元素,其中包含href属性的值

答案 1 :(得分:1)

可能最简单的事情就是输出一个带有时间值的隐藏表单字段。这使得您的表单也与非JavaScript浏览器兼容。

<form id="calendar" name="calendar" action="" method="post">
<input type="hidden" value="<?php echo $next_month; ?>" name="time" />
<a href="<?php echo $next_month; ?>" class="submitCal">&raquo;</a>
</form>

然后你就完成了!除了noConflict()位之外,你的jquery看起来很好。最好的做法是在加载jQuery库之后立即将其粘贴到文档头中。

答案 2 :(得分:1)

如果您使用的是jQuery 1.4,则可能会有效:

jQuery('.submitCal').click(function() {
    $(this).closest('form').append($('<input>', {
        id: 'time',
        name: 'time',
        val: $(this).attr('href')
    })).submit();
});