1

我想知道如何将 HTML 表单的文本框值附加到链接。例如,我有 3 个链接,每个链接都指向不同的 PHP 文件,但是,我需要传递一个变量。由于我的页面设计,我不能使用按钮。所以,我创建了一个带有文本字段的表单。如何使用链接发送该文本字段值?

例如:

<form>
<input type="text" name="test1" id="test1"></input></form>

<a href=index.php?id=$test1">Link 1</a>
<a href=index2.php?id=$test1">Link 2</a>
<a href=index3.php?id=$test1">Link 3</a>

我希望这对我正在尝试做的事情有意义。

编辑:

我试图动态地做到这一点,但是:

好的,我做了一个这样的函数:

 <script> 
function awardcode()
{ var awamount = document.getElementById("awardamount"); 
document.write('<?php $awardvar = ' + awamount.value + '; ?>');  
}; 
</script> 

然后,我通过 PHP 创建了如下所示的链接:

echo '<a id=awlink3 name=awlink3 href="index.php?siteid=gmaward&type=xp&post=' . $posts_row['posts_id'] . '&handle=' . $posts_row['handle'] . '&varamount=' . $awardvar . '">Award XP</a>';

然而,这并没有奏效。这是我的输入框代码:

<form><input type=text name='awardamount' id='awardamount' onchange='awardcode()' style:'width:10px;'></form>

当我输入数字然后制表符时,它会加载一个空页面。

我该如何调整?

4

1 回答 1

1

您需要使用 JavaScript 动态更改链接。这是一种方法:

$('a').on('click',function(e) {
  e.preventDefault();
  var url = $(this).attr('href').split('$')[0];
  window.location = url + $('#test1').val();
});

但最好将onchange事件添加到文本框本身,以便 HREF 立即更改并且用户可以在鼠标悬停时看到预期的目的地:

$('#test1').on('change', function () {
  var val = $(this).val();
  $('a[href*=\\?id\\=]').each(function (i, el) {
    $(el).attr('href', function (j, str) {
      return str.split('?')[0] + "?id=" + val;
    });
  });
});
于 2013-01-15T16:01:56.710 回答