美好的一天
我有一个动态将数据填充到html表中的表单。
我想检查tbody中的td标签是否为空。如果没有,我想显示一个新按钮,上面写着:'完成'......或者其他什么
<table class="borderClass">
<thead>
<tr>
<th class="tdProviderHead">Provider
</th>
<th class="tdCardNoHead">Card Number
</th>
<th class="tdCostHead">Cost
</th>
</tr>
</thead>
<tbody data-bind="foreach: Data">
<tr>
<td><span data-bind="text: Provider"></span></td>
<td><span data-bind="text: CardNo"></span></td>
<td><span data-bind="text: 'R ' + Cost()"></span></td>
</tr>
</tbody>
</table>
有什么建议吗?
答案 0 :(得分:2)
这样的事情可能有用......
jQuery(document).ready(function(){
var tds = jQuery("table.borderClass > tbody > tr > td");
var anyEmpty = false;
tds.each(function(){
if(jQuery(this).text() == "")
anyEmpty = true;
});
if(anyEmpty == false || tds.length == 0){
// show button
}
});
答案 1 :(得分:1)
$("tbody tr td").length
会给你td的数量。
您可以检查任何td是否存在并显示按钮
if($("tbody tr td").length == 0){
// Do something
}
编辑:活动活动= activityManager.getByCode(activityShortCode);刚刚意识到td
将会出现,但您想检查它们是否为空。我的解决方案在这种情况下不起作用,因为它只检查td
的数量而不是它们的内容。其他人给出了正确的解决方案,你可以试试。
答案 2 :(得分:1)
尝试使用,
$(document).ready(function() {
$('tbody tr td').each(function(){ // use .each function to iterate between td cells
if($(this).html()==''){ // check whether any of the td cells are empty
$(this).html('<input type="button" value="Done"/>'); // place a button to the empty td cell
}
});
});
html代码:
<table class="borderClass">
<thead>
<tr>
<th class="tdProviderHead">Provider
</th>
<th class="tdCardNoHead">Card Number
</th>
<th class="tdCostHead">Cost
</th>
</tr>
</thead>
<tbody data-bind="foreach: Data">
<tr>
<td><span data-bind="text: Provider"></span></td>
<td><span data-bind="text: CardNo"></span></td>
<td><span data-bind="text: 'R ' + Cost()"></span></td>
<td></td>
</tr>
</tbody>
</table>
点击此处查看演示Jsfiddle
或者如果你想检查其中一个span标签是否为空,在其他地方显示一个按钮,请使用以下
$(document).ready(function() {
var emptySpan = false; // initialize a variable
$('tbody tr td span').each(function(){
if($(this).html()==''){
emptySpan = true; // store the status if you find a empty span tag
}
});
if(emptySpan == true){
$('#notify').html('<input type="button" value="Done"/>');
}
});
让我们在桌子外面或任何你想要的地方使用div,
<div id="notify"></div>
答案 3 :(得分:0)
你应该试试这个:
$('tbody tr').each(function(){
var txt = $(this).find('td').text();
(txt == '') ? $(this).find('td').text('Done'): return true
});
答案 4 :(得分:0)
尝试:
$("table tbody tr td").each(function() {
if(!$(this).text() || !$(this).html()){
};
});
或
$.each( $("table tbody tr td"), function() {
if(!$(this).text() || !$(this).html()){
};
}