我用mysql创建一个包含动态数据的表。他似乎: screen
当我点击第二行的删除按钮,并使用id值创建一个警告js时,他将id保存在第一行而不是我所点击的行中。
我的观点:
$('.Btrash').click(function() {
//var id_stream = $('#id_stream').val();
var id_stream = $('#id_stream').attr('value');
var id_compte = $('#id_compte').val();
alert(id_stream);
});
<div class="row" id="Tstream">
<table class="table table-striped table-bordered table-list">
<thead>
<tr>
<th>Feeds</th>
<th>Data request</th>
<th>Begin Stream</th>
<th>End Stream</th>
<th><em class="fa fa-cog"></em></th>
<th>Status</th>
<th>Access to Data</th>
</tr>
</thead>
<tbody >
<?php foreach ($aAllRequestByIdUser as $aRequestByIdUser) : ?>
<tr>
<td class="vert-align">
<input type="hidden" id="id_compte" value="<?= $iIdCompte ?>">
<input type="text" id="id_stream" value="<?= $aRequestByIdUser['id_Stream'] ?>">
...
我的提醒始终显示74。 你能帮我找一个解决方案吗?
由于
答案 0 :(得分:0)
首先让我解释一下jquery选择器。这个你的代码
var id_stream = $('#id_stream').attr('value');
选择id为#id_stream的所有项目,并返回第一个值。
如果要获取单击行的ID,则应首先选择行。但由于您还没有共享其余的代码,我只能假设其余的代码。有几种方法,这是其中之一。
1)获取$(this)&gt;的父级
2)然后得到它的第一个兄弟
3)最后找到输入并得到val()。
或者你可以通过Jquery最近的功能来实现。但正如我所说,首先我需要看到你的其余代码。