[英]How to increment variable value in jquery?
我正在嘗試增加id
值和td
元素。
當我試圖通過創建一個簡單的按鈕來增加一個值時,它不起作用,但是當我為我的代碼實現解決方案時,它永遠不會起作用。 不確定嵌套的onclick
是否影響流量
$(document).ready(function(){
$('#coursenumber').change(function() {
//alert($(this).val());
var credit = $(this).val().split('|');
var data = {};
data.action = 'getcredits';
data.strm = credit[0];
data.sessioncode = credit[1];
data.subject = credit[2];
data.coursenumber = credit[3];
$("#strm").attr('value', data.strm);
$("#session_code").attr('value', data.sessioncode);
$("#subjectss").attr('value', data.subject);
$("#course_numbers").attr('value', data.coursenumber);
//add values to hidden input tags
//alert(JSON.stringify(data));
$.ajax({
dataType: 'json',
url: '../excesscreditautomation/ajaxxx.do',
method: 'POST',
data: $.param(data),
success: function (response){
//$('#ajaxGetUserServletResponse').text(response);
//displayCourses(response);,
console.log(response);
displayCredits(response);
//add button function
//onclick function pass the values to html
$(document).on('click','#add-course', function (){
$("#coursenumberTab").hide();
$("#subjectTab").hide();
$("#mycreditsTab").hide();
$("#strm").empty();
$("#session_code").empty();
$("#subject").empty();
$("#coursenumber").empty();
$("#mycredits").empty();
var myOption = 1;
for (var i = 0; i < response.course.length; i++) {
console.log(response.course.length);
$('#table-2 > tbody:last-child')
.append('<tr id="optionid' + ++myOption + '">' +
'<td>'+ ++myOption + '</td> ' +
'<td>' + response.course[i].strm + '</td> ' +
'<td>' + response.course[i].subject + '</td> ' +
'<td>' + response.course[i].coursenumber + '</td> ' +
'<td>' + response.course[i].credits + '</td> ' +
'<td><a href="#">Delete</a></td> ' +
'</tr>' );
}
});
},error: function(){
alert('failure');
}
});
});//end #credit
});
因此, myOption
永遠不會更改/增加值。
另一個問題是,當我第二次嘗試add-course
時,它會添加兩次td
。 換句話說,它是在復制課程。 第一次運行查詢時,它會添加td
一次。
更新:請注意,每次按下添加課程按鈕時,循環僅返回 1 個結果。 所以,我需要數字myOption
留在那里。 例如,如果我按下 add-course 按鈕,第一個 myOption 應該是 1..然后我想添加一個新課程,所以我再次按下 add-course 按鈕,現在 id 應該說 myOption2 等等..就像創建一個 LIKE 按鈕,每次按下該按鈕時數字都會增加。
現在 append tr
只是在我每次按add-course
時添加相同的 ID 號
var myOption = $('.trRow').length + 1; for (var i = 0; i < response.course.length; i++) { console.log(response.course.length); $('#table-2 > tbody:last-child').append('<tr class="trRow" id="optionid' + (myOption++) + '">' + '<td>' + (myOption++) + '</td> ' + '<td>' + response.course[i].strm + '</td> ' + '<td>' + response.course[i].subject + '</td> ' + '<td>' + response.course[i].coursenumber + '</td> ' + '<td>' + response.course[i].credits + '</td> ' + '<td><a href="#">Delete</a></td> ' + '</tr>'); }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.