我在JavaScript中添加自动递增功能时遇到问题。例如,如果Kod Terakhir为100-1 / 5,则在显示输入字段为100-1 / 6时,这意味着每次都会从Kod Terakhir数字中进行检测,并在该数字后面加1。
以下是我的JavaScript代码:
var id_selected = selectObject.value;
var cate_id_selected = selectObject.selectedOptions[0].getAttribute("data-cat_id");
var root_selected = selectObject.selectedOptions[0].getAttribute("data-root");
var action = 'find_max_code';
$.ajax({
url:'?f=kod_perfailan',
type:'POST',
data:{id_selected: id_selected,
cate_id_selected: cate_id_selected,
root_selected: root_selected,
action: action
},
success:function(data) {
if(data.trim() !== ""){
// document.getElementById("function_code_last").innerHTML = "*Kod Terakhir: " + data;
document.getElementById("activity_code_last").innerHTML = "*Kod Terakhir: " + data;
document.getElementById("sub_activity_code_last").innerHTML = "*Kod Terakhir: " + data;
document.getElementById("transaction_code_last").innerHTML = "*Kod Terakhir: " + data;
document.getElementById("activity_code").value = data + 1;
document.getElementById("sub_activity_code").value = data + 1;
document.getElementById("transaction_code").value = data + 1;
}else{
// document.getElementById("function_code_last").innerHTML = "*Tiada Data Disimpan";
document.getElementById("activity_code_last").innerHTML = "*Tiada Data Disimpan";
document.getElementById("sub_activity_code_last").innerHTML = "*Tiada Data Disimpan";
document.getElementById("transaction_code_last").innerHTML = "*Tiada Data Disimpan";
}
}
下面是我的输出,但这是错误的,因为输入字段应该是100-1 / 6,而不是100-1 / 51。我认为我的代码数据+1;这里有问题。
实际上我希望成功输出在图片下方:
因此,下面的输入字段可能会显示数字格式(示例):
100-1/xxxx
100-1/5/xxxx
100-1/5/10/xxxx
256-1/10/xxxx
这意味着xxxx编号每次需要加1才能进行自动递增。我的号码存储在数据中。
希望有人可以指导我如何解决这个问题。谢谢。
您需要标记字符串,删除并增加您感兴趣的部分。似乎您只是在执行字符串连接操作。
function incrementSubActivityCode(sac) {
var p = sac.lastIndexOf("/") + 1;
return (p === 0) ? sac :
sac.substr(0, p) + (parseInt(sac.substr(p)) + 1);
}
// Example value
var data = "100-1/5/10/5";
// Incorrect - performs concatenation
document.getElementById("sub_activity_code").value = data + 1;
// Corrected - now performs increment
document.getElementById("sub_activity_code").value = incrementSubActivityCode(data);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句