如何使用jquery获取td值? while循环将生成一些具有相同类名...
<table>
<?php
while(...){
?>
<tr>
<td class="datao">data 0</td>
<input type="button" class="getValue" value="Delete" />
</tr>
<?php
}
?>
</table>
Jquery的:
$(".getValue").click(function(){ $.post("somescript.php", { value:$("data0").val()}, function(data){ alert(data); }); });
更新:
好吧,我正在生成一个包含来自数据库的数据的表。 之后我想删除数据库中的任何一行,所以,我把一个按钮附加到每个数据值()这里的问题是,当我在每个按钮和td上使用相同的类名时,获取正确的td值。之后,我将使用AJAX并使用PHP从数据库中删除PROPER行数据。
更新:
生成的代码如下所示:
<table>
<tr>
<td class="datao">xzczxc</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">gfh+pso</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">sdhgfjgk</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">asdghdas</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">egfcn</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">sdfds..k</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">6ytytu</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">tyghj0</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">daghjgh0</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">dagh0</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">dada0</td>
<input type="button" class="getValue" value="Delete" />
<td class="datao">dasa</td>
<input type="button" class="getValue" value="Delete" />
</tr>
</table>
如何删除例如第四行? 还是第五个?
我只想在按下按钮时获取td值并将这些值传递给php脚本全部。
我想在按下“删除”按钮
时将一些td值传递给ajax调用<table>
<tr>
<td class="datao">first column</td>
<td class="data1">first column</td>
<td class="data2">first column</td>
<td colspan="2"></td>
</tr>
<tr>
<td class="datao">jkhghj</td>
<td class="data1">dsfg</td>
<td class="data2">iouhfg</td>
<input type="button" class="deleteRow" value="Delete" />
</tr>
<tr>
<td class="datao">hgjdss</td>
<td class="data1">oiuy</td>
<td class="data2">qweasd</td>
<input type="button" class="deleteRow" value="Delete" />
</tr>
<tr>
<td class="datao">aweda</td>
<td class="data1">asd</td>
<td class="data2">asd</td>
<input type="button" class="deleteRow" value="Delete" />
</tr>
<tr>
<td class="datao">asdasvg</td>
<td class="data1">esw</td>
<td class="data2">ee</td>
<input type="button" class="deleteRow" value="Delete" />
</tr>
<tr>
<td class="datao">qw</td>
<td class="data1">zdg</td>
<td class="data2">lykj</td>
<input type="button" class="deleteRow" value="Delete" />
</tr>
</table>
答案 0 :(得分:2)
您可以使用map()
函数获取所有匹配元素的文本,如下所示:
var values = $('td.datao').map(function() {
return $(this).text();
}).get();
最后的get()
返回一个普通的javascript数组而不是jQery包含的数组。
答案 1 :(得分:0)
阅读评论似乎你想要一个特定的评论来获取价值。
为此,请使用.eq
:
$(".datao:eq(0)").val(); // first one
但是,它是datao
还是data0
和data1
等? HTML输出示例会很有帮助。
编辑:我希望我能更好地理解你。
$(".getValue").click(function(){
$.post("somescript.php", { value: $(this).parent().find('td').html() },
function(data){
alert(data);
});
});
答案 2 :(得分:0)
FCC-PT说得对:
$(“data0”)[0] .val()将为您提供第一个条目值。你需要循环或每个()它们来获取值列表。但是你需要提供更多的背景来理解你在做什么。
答案 3 :(得分:0)
假设您想要个别值:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript"><!--
jQuery(function($){
$("button").click(function(){
var values = [];
$("table td.datao").each(function(){
values.push( $(this).text() );
});
alert(values.join("\n"));
});
});
//--></script>
</head>
<body>
<table>
<tr><td class="datao">data 0</td></tr>
<tr><td class="datao">data 1</td></tr>
<tr><td class="datao">data 2</td></tr>
<tr><td class="datao">data 3</td></tr>
<tr><td class="datao">data 4</td></tr>
</table>
<button>Get values</button>
</body>
</html>
答案 4 :(得分:0)
所以看起来没有人回答我的问题并正确回答我的问题,无论如何,我要感谢大家的意见。
我已经找到了办法并发现了一种不完美的方法,但工作正常......
Suposing我想抓住输入,选择或其他内容的值......
$('input.buttonClass').live('click', function() {
var valuesArray = [];
$(this).closest('tr').find("select").each(function() {
valuesArray.push($(this).attr('value'));
});
$.post("script.php", { somename:valuesArray[0], otherName:valuesArray[1] }, function(data) {
do something in here with the returned data!
});
}
});
在上面的代码中,tr内部的select标签的值将存储在数组中,并通过ajax调用传递给php脚本。存储来自其他输入类型的值,例如input type =“text”,如下所示:... find(“select,input [type = text]”)。每个...我希望有人得到我的工作帮助。谢谢你们。