我在我的网站上使用MySQL,ajax和c#,我有一个显示此查询的输入页面:
Select MAX(Id) from table
然后在我的成功函数的ajax调用中我有这个:
var id = data.d + 1;
在我的空表中,我有身份和自动增量= 1的Id,所以var id = 0 + 1;所以我的输入值为1,然后在插入一行时更改。
问题:
我想在00001开始身份,我改变表并添加zerofill,所以现在我的第一行是000001,但是当我想在输入中显示下一个id时显示0,1,2或者其他但没有0&# 39; S
问题:
如何用0&#39来显示值?
答案 0 :(得分:0)
您可以使用lpad
(左侧边框)将数值显示为零填充文字:
Select lpad(MAX(Id),5,'0') from table;
修改:Javascript中的零填充值将转换为数字,结果将是常规数字(非零填充)
使用Javascript:
var id = ("00000" + (parseInt(data.d) + 1));
var zerofillid = id.substring(id.length -5); // =00002
您可以使用zerofillid
在最后显示。
答案 1 :(得分:0)
在数据库标签上执行此操作并不是一个好主意。只需更改以适当格式从ajax获取的id字段。
function (data) {
//Success Event
var id = data.d + 1;
id = pad (id, 6); // now id will be in the format you wanted.
$('#ID').val(id);
}
function pad (str, max) {
str = str.toString();
return str.length < max ? pad("0" + str, max) : str;
}
/*********Like for example, the function will work as****//
pad("1", 6); // => "000001" ....when id = 1
pad("12", 6); // => "000012" ....when id = 12
pad("123", 6); // => "000123" ....when id = 123
pad("1234", 6); // => "001234" ....when id = 1234
pad("12345", 6); // => "012345" ....when id = 12345
pad("123456", 6); // => "123456" ....when id = 123456
&#13;