【问题标题】:can not reference a textinput value by variable in jquery post method无法在 jquery post 方法中通过变量引用文本输入值
【发布时间】:2012-07-17 20:08:15
【问题描述】:

我想通过 jquery ajax post 方法发送数据。我试图通过变量引用表单的输入。但是不成功。这里是代码..

 <script type="text/javascript">
  function abc(parameter)
{  
 $.post('test1.php',{id:parameter.parameter.value},
      function(output)
      {
         $('div').html(output).show();            

         })
}
</script>
<?php
for ($i=1;$i<=3;$i++)
{   $j=$i+1;
echo "<form name='$i'><div>$i</div><input name='$i' type='hidden' value='$j'/><input type='button'value='Accept' onclick='abc($i)'></form>";
}
?>

当我按下第二个按钮时,我想获得输出 3。我的萤火虫控制台说“未定义的参数。参数”我该怎么办?请告诉我。提前谢谢.... 这是我的 test1.php 代码..

  if (isset($_POST['id']))
 {     $id=$_POST['id'];
   echo "Got $id";
  }

【问题讨论】:

  • 您只是将$1 传递给abc() 函数,鉴于您提供的代码,这毫无意义。我认为您的意思是将元素传递给函数,然后获取它的值,在这种情况下,您需要 parameter.value 而不是 parameter.parameter.value,但即便如此,您也需要更正将元素传递给 @ 的方式987654327@.
  • 顺便说一句,您应该花一些时间来格式化您的问题的代码。缩进有时看起来有点奇怪。

标签: jquery


【解决方案1】:

在您的评论中,您说您想发送文本框的值。由于文本框是通过这样的 onclick 呈现的:onclick='abc($i)',例如onclick='abc(2)'$i=2 时,你需要在abc 函数中找到正确的文本框,即名称为2 的文本框:

function abc(parameter) {
    var textboxValue = $("input[name='" + parameter + "']").val();
    $.post('test1.php',{id: textboxValue}, function(output) {
        $('div').html(output).show();
    });
}

【讨论】:

  • 我要发送texbox的值
  • 我想我会从 2.2.value 获得第二个文本框的值
  • 太好了,乐于助人!你能接受这个答案,这样问题就结束了吗?
  • 嘿@SovonMainul,如果它解决了您的问题,请接受这个答案,以免它没有打开。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-10-18
  • 2012-03-28
  • 1970-01-01
  • 1970-01-01
  • 2016-08-06
  • 2015-12-14
  • 2019-02-09
相关资源
最近更新 更多