2014-06-08 35 views
0

尋找一些有關愚蠢問題的幫助。 我有以下功能:jquery函數不會在加載時觸發

function update_pred(){ 
    var sum_pred = 0; 
    $('.pred').each(function(){ 
     var importo_pred = this.value; 
     importo_pred = importo_pred.replace(",","."); 
     sum_pred += parseFloat(importo_pred); 
     $('#pred_tot').html(sum_pred); 
    }); 
} 

function update_ipo(){ 
    var sum_ipo = 0; 
    $('.ipo').each(function(){ 
     var importo_ipo = this.value; 
     console.log(importo_ipo); 
     importo_ipo = importo_ipo.replace(",","."); 
     sum_ipo += parseFloat(importo_ipo); 
     console.log(sum_ipo); 
     $('#ipo_tot').html(sum_ipo); 
    }); 
} 

這些都應該更新基於其他一些領域與特定的類值的表格單元格。 如果我從jquery中的更改事件中調用每個函數,那麼一切正常。 什麼不工作是這樣的:

$(document).ready(function(){ 
    update_pred(); 
    update_ipo(); 
}); 

我不能火在頁面加載這兩個功能。我從MySQL加載每個值,我想顯示負載上的總和。 我錯過了什麼? 感謝您的幫助照常!

+2

你需要檢查你的jquery文件是否在使用$(document).ready之前正確加載。 – dotnetstep

+0

非常感謝,但已經過檢查。 :)我是新手,但沒有那麼多! –

+0

如果是這種情況,那麼您準備在文檔就緒功能之上啓動的表不包含數據。有可能這個表也填充了ajax調用,並且當文檔準備就緒時,Ajax調用仍在進行中。如果是這種情況,則在ajax調用成功方法結束時完成。 – dotnetstep

回答

0

解決。這個問題是有關這段代碼:

$('.ipo').each(function(){ 
$(this).change(function(){ 
    update_ipo(); 
}); 
}); 

它談到的適當形式:

$('.ipo').change(function(){ update_ipo(); }); 

的伎倆。 此代碼本身工作,但掛起所有其他工作的JavaScript。

相關問題