2014-04-26 73 views
0

嘗試創建預覽表單並不理解爲什麼每個函數()都不能在此腳本中工作。或者僅適用於最後克隆的行,並忽略先前克隆的輸入中的零值。。每個函數()用於克隆輸入

$('input[id^=Mult_factor_]').each(function() { 
    var MultFactor = $(this).val(); 
    var TotPoints = $('#Tot_points').val(); 
    var exp1 = "Overload"; 
    var exp2 = "Load is: "; 
    if (MultFactor < 1 || TotPoints > 100) { 
     $('#ExemptionLimitsText').text(exp1).show(); 
     $('#PrwTotPointsText').hide(); 
    } else { 
     $('#ExemptionLimitsText').text(exp2).show(); 
     $('#PrwTotPointsText').text($('#Tot_points').val()).show(); 
    } 
}); 

JSfiddle

我需要:如果克隆的多因素值中的至少一個是零表演「過載」 enter image description here

+1

不明白你正在嘗試做的...以預覽形式複製「Mult_factor_」? – Portekoi

+2

你能解釋一下你想要達到的目標嗎? – Coderaemon

+0

我試圖在JSFiddle 中測試您的代碼每次我點擊預覽按鈕時結果都是過載 –

回答

1

基於您的評論,你想顯示如果單詞「超載」或者「附加」字段超過100,或者任何多因子字段爲0.

但是,如果滿足這些條件中的任何一個,則循環將繼續處理。

不要使用一個循環,而不是專門針對0

var totalPoints = parseInt($('#Tot_points').val()); 
if(totalPoints > 100 || $('input[name="MultFaktor"]').filter(function(){return this.value=='0'}).length > 0) { 
    $('#ExemptionLimitsText').text("Overload").show(); 
    $('#PrwTotPointsText').hide(); 
} else { 
    $('#ExemptionLimitsText').text("Load is: ").show(); 
    $('#PrwTotPointsText').text(totalPoints).show(); 
} 
+0

這樣做的一個好處是,如果總分超過100,它甚至不會打擾0查找MultFaktor值。 –

+0

此解決方案運行良好,謝謝。 – user3426204

0

返回false,multifaktor值搜索超負荷

var valid = true; 
var exp1 = "Overload"; 
var exp2 = "Load is: "; 
var TotPoints = $('#Tot_points').val(); 

$('input[name=MultFaktor]').each(function() { 
    var $this = $(this); 
    if ($.trim($(this).val()) == '0' || TotPoints > 100) { 
     valid = false; 
    } else { 
     $('#ExemptionLimitsText').text(exp2).show(); 
     $('#PrwTotPointsText').text($('#Tot_points').val()).show(); 
    } 
}); 

if (valid == false) { 
    e.preventDefault(); 
    $('#ExemptionLimitsText').text(exp1).show(); 
    $('#PrwTotPointsText').hide(); 
}