Javascript 功能正常,但仅在线运行
我有一个问题,我有一个巨大的jquery函数。当我创建它时,经过一些设置后,效果很好。当我离线使用它时,它会工作,但当我在网站上上传页面时,会发生一些奇怪的事情: 该功能只工作了一半听起来很有趣,但我不明白它为什么这么做 公式是:Javascript 功能正常,但仅在线运行,javascript,Javascript,我有一个问题,我有一个巨大的jquery函数。当我创建它时,经过一些设置后,效果很好。当我离线使用它时,它会工作,但当我在网站上上传页面时,会发生一些奇怪的事情: 该功能只工作了一半听起来很有趣,但我不明白它为什么这么做 公式是: function calcolo_peso() { var forza = $('#for').val(); var clegg = 0; var cmed = 0; var cpes = 0; var taglia = 0;
function calcolo_peso() {
var forza = $('#for').val();
var clegg = 0;
var cmed = 0;
var cpes = 0;
var taglia = 0;
if (forza == 0) {
var clegg = 0;
var cmed = 0.1;
var cpes = 0.2
} else if (forza == 1) {
var clegg = 1.5;
var cmed = 3;
var cpes = 5
} else if (forza == 2) {
var clegg = 3;
var cmed = 6.5;
var cpes = 10
} else if (forza == 3) {
var clegg = 5;
var cmed = 10;
var cpes = 15
} else if (forza == 4) {
var clegg = 6.5;
var cmed = 13;
var cpes = 20
} else if (forza == 5) {
var clegg = 8;
var cmed = 16.5;
var cpes = 25
} else if (forza == 6) {
var clegg = 10;
var cmed = 20;
var cpes = 30
} else if (forza == 7) {
var clegg = 11.5;
var cmed = 23;
var cpes = 35
} else if (forza == 8) {
var clegg = 13;
var cmed = 26.5;
var cpes = 40
} else if (forza == 9) {
var clegg = 15;
var cmed = 30;
var cpes = 45
} else if (forza == 10) {
var clegg = 16.5;
var cmed = 33;
var cpes = 50
} else if (forza == 11) {
var clegg = 19;
var cmed = 38;
var cpes = 57.5
} else if (forza == 12) {
var clegg = 21.5;
var cmed = 43;
var cpes = 65
} else if (forza == 13) {
var clegg = 25;
var cmed = 50;
var cpes = 75
} else if (forza == 14) {
var clegg = 29;
var cmed = 58;
var cpes = 87.5
} else if (forza == 15) {
var clegg = 33;
var cmed = 66.5;
var cpes = 100
} else if (forza == 16) {
var clegg = 38;
var cmed = 76.5;
var cpes = 115
} else if (forza == 17) {
var clegg = 43;
var cmed = 86.5;
var cpes = 130
} else if (forza == 18) {
var clegg = 50;
var cmed = 100;
var cpes = 150
} else if (forza == 19) {
var clegg = 58;
var cmed = 116;
var cpes = 175
} else if (forza == 20) {
var clegg = 66.5;
var cmed = 133;
var cpes = 200
} else if (forza == 21) {
var clegg = 76.5;
var cmed = 153;
var cpes = 230
} else if (forza == 22) {
var clegg = 86.5;
var cmed = 173;
var cpes = 260
} else if (forza == 23) {
var clegg = 100;
var cmed = 200;
var cpes = 300
} else if (forza == 24) {
var clegg = 116.5;
var cmed = 233;
var cpes = 350
} else if (forza == 25) {
var clegg = 133;
var cmed = 266.5;
var cpes = 400
} else if (forza == 26) {
var clegg = 153;
var cmed = 306.5;
var cpes = 460
} else if (forza == 27) {
var clegg = 173;
var cmed = 346.5;
var cpes = 520
} else if (forza == 28) {
var clegg = 200;
var cmed = 400;
var cpes = 600
} else if (forza == 29) {
var clegg = 233;
var cmed = 466.5;
var cpes = 700
} else if (forza == 30) {
var clegg = 266;
var cmed = 532;
var cpes = 800
} else {
var clegg = 299;
var cmed = 306;
var cpes = 900
}
if ($('#tagliapersonaggio').val() == "Piccola") {
var taglia = 0.75
}
if ($('#tagliapersonaggio').val() == "Media") {
var taglia = 1
}
if ($('#tagliapersonaggio').val() == "Grande") {
var taglia = 2
}
var terreno = cpes * 2;
var trascinare = cpes * 5;
var caricoleggero = clegg * taglia;
var caricomedio = cmed * taglia;
var caricopesante = cpes * taglia;
$('#car_legg').val(caricoleggero);
$('#car_med').val(caricomedio);
$('#car_pes1, #car_pes2').val(caricopesante);
$('#dalterreno').val(terreno);
$('#trascinare').val(trascinare);
}
输出必须是6个输入,并填入最终值,但仅在线2个结果完全填满,最后两个
任何猜测???对每个变量使用
var
一次就足够了:
function calcolo_peso(){
var forza = $('#for').val();
var clegg = 0;
var cmed = 0;
var cpes = 0;
var taglia = 0;
if (forza == 0) {
clegg = 0;
cmed = 0.1;
cpes = 0.2
} else if (forza == 1) {
clegg = 1.5;
cmed = 3;
cpes = 5
} ...
if ($('#tagliapersonaggio').val() == "Piccola") {
taglia = 0.75
} ...
terreno = cpes * 2;
trascinare = cpes * 5;
caricoleggero = clegg * taglia;
....
最后两个字段不受
taglia
值的影响。我想你必须确保taglia
有一个正确的数值。什么是有效的?你试过什么?请把语法修好,我看不懂。对不起,语法是我最好的,你得自己弄清楚;)问题是函数返回了6个输入的值。当我离线尝试公式时,6个输入正确填写,但当我在线尝试时,只有2个值与0不同,其他值没有。函数正在工作(因为其中2个值是正确的),但。。不完全!非常糟糕的代码结构&您没有足够的工作来解决您的问题。投票决定关闭。好的,对不起,下次我将尝试成为最好的,而不是使用一大块if-else,如果在数组中定义值要短得多,而且可以理解,因为forza介于0和30之间。var list=[{clegg:0,cmed:0.1,cpes:0.2},{clegg:1.5,cmed:3,spes:0.2}];result=list[forza]@regulus,这将使代码更加清晰感谢您的帮助!!但我仍然不明白为什么只有一部分功能有效,而另一部分功能无效。我希望你能理解我,但从最后一部分:$('car#legg').val(caricoleggero)$(“#car_med”)val(caricomedio)$(“#car#pes1,#car#pes2”).val(加共体)$(#dalterreno').val(terreno)$(#trascinare').val(trascinare)代码>仅填充最后两个中的值。。其他的都是空的。