我在为我想做的事情找到正确的解决方案时遇到了一些麻烦。我有一张桌子:
var _1 = "Something1";
var _2 = "Something2";
var result = "dsadas";
$('<tr><td>' + _1 + '</td><td>' + _2 + '</td><td>' + result + '</td></tr>').appendTo('#test');
td {
border: 1px solid black;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table class="gr">
<thead>
<tr>
<th>Something1</th>
<th>Something2</th>
<th>Result</th>
</tr>
</thead>
<tbody id="test">
<tr>
<td>Something1</td>
<td>Something2</td>
<td>32</td>
</tr>
</tbody>
</table>
我像在上面给你看过一样推动它。
当我动态添加新元素时,我想检查表中是否存在要推送到表中的列的值,并且:如果不存在,则推送新的值(如果存在),只需更改结果列即可。我该如何存档?
$(function(){
$("#addtr").on('submit', function(){
var something1 = $("#something1").val();
var something2 = $("#something2").val();
var result = $("#result").val();
var inc = 0;
var cnt = 0;
$('#tbody tr').each(function(i, el){
var value1 = $(el).children().eq(0).text();
var value2 = $(el).children().eq(1).text();
var res = $(el).children().eq(2).text();
if(value1 == something1 && value2 == something2){
inc = (inc)+1;
res = parseInt(res)+(1);
$(this).children(":eq(2)").text(res);
}
cnt = cnt+1;
})
if(inc == 0){
var add = "<tr><td>"+something1+"</td><td>"+something2+"</td><td>"+result+"</td></tr>";
$(".gr tbody").append(add);
} else {
//console.log("exist");
}
return false;
})
})
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<table class="gr">
<thead>
<tr>
<th>Something1</th>
<th>Something2</th>
<th>Result</th>
</tr>
</thead>
<tbody id='tbody'>
<tr>
<td>Something1</td>
<td>Something2</td>
<td>32</td>
</tr>
</tbody>
</table>
<form method='post' action='#' id='addtr'>
<input type='text' name='something1' id='something1' />
<input type='text' name='something2' id='something2' />
<input type='text' name='result' id='result' />
<button type='submit' id='submit'>Add</button>
</form>
我认为这可以解决您的问题,请检查我是否正在使用文本框添加动态输入,请在两个文本框中输入相同的值,然后结果值将递增,否则<tr>
将创建新的值
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句