Javascript 每3秒递增随机数并显示结果
我有从jquery函数生成的动态输入字段。可以通过单击这些输入字段来添加或删除按钮。我有一个随机数发生器,每3秒改变一次它的值。我试图将随机数的值设置为第一个动态输入字段,然后在表单中添加其他输入字段时,将值增加Javascript 每3秒递增随机数并显示结果,javascript,jquery,Javascript,Jquery,我有从jquery函数生成的动态输入字段。可以通过单击这些输入字段来添加或删除按钮。我有一个随机数发生器,每3秒改变一次它的值。我试图将随机数的值设置为第一个动态输入字段,然后在表单中添加其他输入字段时,将值增加+1 如何实现以下目标?因为,值每5秒更改一次。生成随机数后,更新表单中当前动态输入字段的值。增量始终为+1,但随机数将明显不同。或 $(文档).ready(函数(){ //生成随机数 setInterval(函数(){ 变量编号=1+数学楼层(数学随机()*6); $('#增量_nu
+1
如何实现以下目标?因为,值每5秒更改一次。生成随机数后,更新表单中当前动态输入字段的值。增量始终为+1
,但随机数将明显不同。或
$(文档).ready(函数(){
//生成随机数
setInterval(函数(){
变量编号=1+数学楼层(数学随机()*6);
$('#增量_num')。文本(数字);
},
3000);
$('#btnAdd')。单击(函数(){
var num=$('.clonedSection').length;
var newNum=新的数字(num+1);
var nextAutoIncrement=$('#result').val();
var newSection=$('#pq_entry_'+num).clone().attr('id','pq_entry_'+newNum);
newSection.children(“:first”).children(“:first”).attr('id'、'increment\u id\uuu'+newNum).attr('name'、'increment\u id\uu'+newNum);
newSection.insertAfter('#pq_entry_'+num).last();
event.preventDefault();
$('btnDel').prop('disabled','');
如果(newNum==5)$('#btnAdd').prop('disabled','disabled');
});
$('#btnDel')。单击(函数(){
var num=$('.clonedSection').length;//当前有多少重复的输入字段
$('#pq_entry.'+num).remove();//删除最后一个元素
//启用“添加”按钮
$('btnAdd').prop('disabled','');
//如果只剩下一个元素,请禁用“删除”按钮
如果(num-1==1)$('btnDel').prop('disabled','disabled');
});
$('btnDel').prop('disabled','disabled');
});
html
要从中开始增量的编号:
价值观:
-
目标
以下是我的一些变化: 为便于修复,您只需在数字更改时更新所有值:
success: function (data) {
var $cloned = $('.clonedSection li');
var num = parseInt(data);
$increment_num.val(num);
$cloned.each(function(i){
$(this).find('input').val(num+i);
})
},
您还可以对克隆代码进行大量清理,并确保新元素设置了正确的值:
$('#btnAdd').click(function () {
var $clones = $('.clonedSection li'),
num = $clones.size() + 1,
next_num = parseInt($clones.last().find('input').val())+1,
$template = $clones.first(),
newSection = $template.clone().attr('id', 'pq_entry_'+num),
ident = 'incremend_id_'+num;
newSection.find('input').attr({
'id': ident,
'name': ident
}).val(next_num);
$('.clonedSection').append(newSection);
if (num == 5) $('#btnAdd').prop('disabled', 'disabled');
});
$('increment_num').val(数字)代码>代替.text(
你在输入中给递增的数字,并想每5秒递增+1
那么你为什么要使用随机
@UDB是的,递增的基数是随机的,我的目标是,如果基数改变,所有输入字段的两个值都会更新。@code\Ed\u学生你是说输入的值是递增的吗m
在页面加载时随机生成,并按照设定的间隔进行更改,所有input#increment#id##
的值将根据input#increment#num
的值显示连续的数字,例如,如果当前时间实例的页面加载和input#increment#num
的随机值为6 t当input#increment_id_1
的值必须为7时,input#increment_id_2
的值必须为8,依此类推。@UDB是的,你答对了。这就是我要找的!谢谢你,完美!重新估价以将其更改为我选择的答案。如果想在部分添加第二个输入子项,我该怎么做?你能稍微做一点实验?这是克隆操作中不会进行的吗?是的,在克隆操作中进行。只需向clonedSection
添加一个额外的输入字段,它将显示如下
你能帮我吗?是的,我会在几个小时后回到电脑前查看
$('#increment_num').val(1 + Math.floor(Math.random() * 6));
setVal(parseFloat($('#increment_num').val())+1)
setInterval(function () {
var number = 1 + Math.floor(Math.random() * 6);
$('#increment_num').val(number);
var i=number+1;
setVal(i);
},
5000);
$('#btnAdd').click(function () {
//..old code as it is
//at last add
setVal(parseFloat($('#increment_num').val())+1)
})
//rest of the code as it is
// add at end
function setVal(i)
{
$('.clonedSection').each(function () {
$(this).find('input').val(i);
i++;
})
}
success: function (data) {
var $cloned = $('.clonedSection li');
var num = parseInt(data);
$increment_num.val(num);
$cloned.each(function(i){
$(this).find('input').val(num+i);
})
},
$('#btnAdd').click(function () {
var $clones = $('.clonedSection li'),
num = $clones.size() + 1,
next_num = parseInt($clones.last().find('input').val())+1,
$template = $clones.first(),
newSection = $template.clone().attr('id', 'pq_entry_'+num),
ident = 'incremend_id_'+num;
newSection.find('input').attr({
'id': ident,
'name': ident
}).val(next_num);
$('.clonedSection').append(newSection);
if (num == 5) $('#btnAdd').prop('disabled', 'disabled');
});