繁体   English   中英

如何使用jQuery获取动态输入文本的值?

[英]How to get value of dynamic input text using jquery?

我的jQuery看起来像-

<script type="text/javascript" language="javascript">
$(document).ready(function() {
   $("[id^=SelectAssignThis-]").click(function(){
       var ProjectID = $("[id^=GetProjectID-]").val();
       var UserIntID = $("[id^=GetUserIntID-]").val();
       $.ajax( {
          type : 'GET',
          url:'test1.php',
          data : {ProjectID: ProjectID, UserIntID :UserIntID},
          success:function(data) {
             $('#ShowAjaxesult').html(data);
          }
       });
   });
});
</script>

我的php代码看起来像-

while($row = mysql_fetch_array($QueryResult))
{
    $ProjectID                 = $row['ProjectID'];
    $Tiltle                    = $row['Title'];
    ?> <tr>
            <td><a href="#" id="SelectAssignThis-<?php echo $ProjectID; ?>">Assign</a></td>                    
            <td><input type="hidden" id="GetUserIntID-<?php echo $ProjectID; ?>" value="<?php echo $UserIntID; ?>">
                <input type="hidden" id="GetProjectID-<?php echo $ProjectID; ?>" value="<?php echo $ProjectID; ?>">
            </td>
            <td><?php echo $ProjectID; ?></td>
            <td><?php echo $Tiltle; ?></td>
       </tr><?php
};

现在我的jQuery中的val ProjectID始终返回与while循环的第一次出现相对应的ProjectID 对于EG-IF while循环出现十次和我的点击<a>第五发生(与id=SelectAssignThis-5我得到的值ProjectID对应于<a>id=SelectAssignThis-1 当单击<a>id=SelectAssignThis-5时,我想获取对应于id=SelectAssignThis-5ProjectID的值,当我选择第6次出现时,类似id=SelectAssignThis-6 ,以此类推。 请帮忙。

val方法返回第一个匹配元素的值。 使用this关键字:

var $td = $(this).closest('td').next();
var ProjectID = $td.find("[id^=GetProjectID-]").val();
var UserIntID = $td.find("[id^=GetUserIntID-]").val();

意见建议:

  • 将className添加到元素并使用类选择器,属性选择器效率不高。
  • 不要为非构造函数使用StudlyCase标识符。
  • 您还可以在第一个单元格中放置隐藏的输入,并使用siblings方法来选择目标元素。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM