Javascript 带有数组中可编辑字段的jquery计算器
根据前面对另一个问题的回答,下一步是添加迷你计算器Javascript 带有数组中可编辑字段的jquery计算器,javascript,jquery,arrays,Javascript,Jquery,Arrays,根据前面对另一个问题的回答,下一步是添加迷你计算器 for (var i = 0; i < animals.length; i++) { output.push('<p>' + animals[i] + '<input class="pull-right" value="0" />' + '</p>'); for(变量i=0;i
for (var i = 0; i < animals.length; i++) {
output.push('<p>' + animals[i] + '<input class="pull-right" value="0" />' + '</p>');
for(变量i=0;i');
我试图用jquery val()获取输入值,但没有成功。。。
还有其他建议吗
正如您在JSFIDLE列表中看到的那样:
第0类
狗0
猴子0
总数:
所以,若用户将cat更新为2,将dog更新为1,我想总共显示3个
谢谢
编辑:
您有一些输入字段,希望从这些字段中获取值并添加总计,然后在总计字段中显示。 您可能需要添加一个按钮,单击该按钮可调用一个js函数,该函数从所有字段中获取值并将其添加,最后将值附加到“#total animals”中
添加
var合计=0;
$('button')。单击(函数(){
//您可能希望在这里进行循环,并为每个输入字段提供一些id。
//在循环内部:
总计+=$(“#输入_字段的#id_).val();
//循环结束时,请执行此操作。
var el=“total=”+total+”;
$(“#动物总数”)。追加(el);
}
您有一些输入字段,希望从这些字段中获取值并添加总计,然后在总计字段中显示。
您可能需要添加一个按钮,单击该按钮可调用一个js函数,该函数从所有字段中获取值并将其添加,最后将值附加到“#total animals”中
添加
var合计=0;
$('button')。单击(函数(){
//您可能希望在这里进行循环,并为每个输入字段提供一些id。
//在循环内部:
总计+=$(“#输入_字段的#id_).val();
//循环结束时,请执行此操作。
var el=“total=”+total+”;
$(“#动物总数”)。追加(el);
}
因为我不确定拖放代码的用途,我在下面的fiddle中删除了它
您可以检查小提琴链接
for(变量i=0;i');
}
$('#list').html(output.join(“”);
$(“.animals input”).change(函数(e){
var number=parseInt(即currentTarget.value);
var animal=$(e.currentTarget).attr(“数据id”);
动物总数[动物]=数量;
countTotal(动物总数);
})
函数countTotal(总计){
var t=0;
用于(var i总计){
t+=总[i];
}
$(“#动物总数”).html(“总数:+t);
}
不同的部分是,我将在每个输入端附加一个动物id,以识别哪个输入值被更改
当输入值改变时,它可以计算总值
希望它能对您有所帮助。因为我不确定拖放代码的用途,我在下面的fiddle中删除了它 您可以检查小提琴链接
for(变量i=0;i');
}
$('#list').html(output.join(“”);
$(“.animals input”).change(函数(e){
var number=parseInt(即currentTarget.value);
var animal=$(e.currentTarget).attr(“数据id”);
动物总数[动物]=数量;
countTotal(动物总数);
})
函数countTotal(总计){
var t=0;
用于(var i总计){
t+=总[i];
}
$(“#动物总数”).html(“总数:+t);
}
不同的部分是,我将在每个输入端附加一个动物id,以识别哪个输入值被更改
当输入值改变时,它可以计算总值
希望它能帮助你。只需在你的js末尾添加这个 如果用户输入的不是数字,你应该测试用户输入。如果你在页面中用于其他目的,你还需要在输入文本中添加一个类
$('input:text').on('change',function(){
var total = 0;
$("input:text").each(function() {
total += parseInt($(this).val());
});
$('#total-animals').html("Total: " + total);
});
只需将此添加到js的末尾 如果用户输入的不是数字,你应该测试用户输入。如果你在页面中用于其他目的,你还需要在输入文本中添加一个类
$('input:text').on('change',function(){
var total = 0;
$("input:text").each(function() {
total += parseInt($(this).val());
});
$('#total-animals').html("Total: " + total);
});
请参阅
在文本框“更改事件”中,请添加如下函数
$(".animals-input").change(function(e) {
calculator();
});
function calculator()
{
var result = parseInt(0);
$(".animals-input").each(function(){
result = result + parseInt($(this).val());
$("#total-animals").html("Total:"+result);
});
}
更新
为了重置总拖动,您需要在可拖放事件中添加my calculator方法
$(".animals-box").droppable({
drop: function(event, ui) {
if ($(".animals-box img").length == 0) {
$(".animals-box").html("");
}
ui.draggable.addClass("dropped");
var elem = ui.draggable[0].getAttribute('id').split('-')[1];
animals.splice(animals.indexOf(elem), 1);
var output = [];
for (var i = 0; i < animals.length; i++) {
output.push('<p>' + animals[i] + '<input class="pull-right" value="0" />' + '</p>');
}
$('#list').html(output.join(""));
$(".animals-box").append(ui.draggable);
$('#list').html(output.join(""));
calculator(); // Add this method into your existing code you will get the result.
}
});
});
$(“.animals box”)。可拖放({
drop:函数(事件、用户界面){
如果($(“.animals box img”).length==0){
$(“.anives box”).html(“”);
}
ui.draggable.addClass(“已删除”);
var elem=ui.draggable[0].getAttribute('id').split('-')[1];
动物.剪接(动物.索引of(elem),1);
var输出=[];
对于(变量i=0;i');
}
$('#list').html(output.join(“”);
$(“.anists框”).append(ui.draggable);
$('#list').html(output.join(“”);
calculator();//将此方法添加到现有代码中,您将得到结果。
}
});
});
这是一个样品。请检查它是否适合您
我希望这能对您有所帮助。请参阅
在文本框“更改事件”中,请添加如下函数
$(".animals-input").change(function(e) {
calculator();
});
function calculator()
{
var result = parseInt(0);
$(".animals-input").each(function(){
result = result + parseInt($(this).val());
$("#total-animals").html("Total:"+result);
});
}
更新
为了重置总拖动,您需要在可拖放事件中添加my calculator方法
$(".animals-box").droppable({
drop: function(event, ui) {
if ($(".animals-box img").length == 0) {
$(".animals-box").html("");
}
ui.draggable.addClass("dropped");
var elem = ui.draggable[0].getAttribute('id').split('-')[1];
animals.splice(animals.indexOf(elem), 1);
var output = [];
for (var i = 0; i < animals.length; i++) {
output.push('<p>' + animals[i] + '<input class="pull-right" value="0" />' + '</p>');
}
$('#list').html(output.join(""));
$(".animals-box").append(ui.draggable);
$('#list').html(output.join(""));
calculator(); // Add this method into your existing code you will get the result.
}
});
});
$(“.animals box”)。可拖放({
drop:函数(事件、用户界面){
如果($(“.animals box img”).length==0){
$(“.anives box”).html(“”);
}
ui.draggable.addClass(“已删除”);
var elem=ui.draggable[0].getAttribute('id').split('-')[1];
动物.剪接(动物.索引of(elem),1);
var输出=[];
对于(变量i=0;i');
}
$('#list').html(output.join(“”);
$(“.anists框”).append(ui.draggable);
$('#list').html(output.join(“”);
calculator();//将此方法添加到现有代码中,您将得到结果。
}
});
});
这是一个样本。请检查它是否适合你
我希望这会对您有所帮助。您需要吗