2012-03-06 162 views
-1

我想計算的金額,但有jQuery與troble ..你能告訴我什麼是我的代碼錯了。javascript代碼沒有正確響應

我的JavaScript和jQuery代碼:

我必須改變這種爲:

$(document).ready(function() { 
    $('.home_banner').cycle({ 
     fx: 'fade' 
    }); 
    $("#tabs").tabs(); 
}); 

和計算器代碼爲:

var u_rate = new Array(); 
    u_rate[0] = new Array(); 
    u_rate[0][0] = 1.022; 
    u_rate[0][1] = 0.75; 

    u_rate[1] = new Array(); 
    u_rate[1][0] = 1.034; 
    u_rate[1][1] = 0.78; 

calc(); 

function calc(){ 
    var result = ''; 
    var id = ''; 
     id = 'u'; 
     curr = u_rate; 
    var curin_id = jquery("#"+id+"currency_in").attr("selectedIndex"); 
    var curout_id = jquery("#"+id+"currency_out").attr("selectedIndex"); 

    var value_float = parseFloat(jquery("#"+id+"value").val()); 

    if(value_float>0){ 
     result=value_float*curr[curin_id][curout_id]; 
     result=Math.round(result*100)/100; 
    } 
    jquery("#"+id+"result").val(result); 
    return true; 
} 

,但仍然沒有得到響應..請檢查此並讓我知道

和html是

請檢查ukash2gold.com

請朋友們讓我知道如何解決這個問題..

ü將能夠看到的[Ukash的到LR]選項卡下的形式

回答

3

typeof jQuery產量"function"但是typeof $收益率爲"undefined"。你是否在noConflict模式下加載jQuery?


編輯1

是你;您的幻燈片代碼像這樣開始:

var $jnav=jQuery.noConflict(); 

請參閱noConflict


編輯2

據我所知,你不使用,它使用可變$任何其他框架。在這種情況下,你可以安全地從你的幻燈片中刪除noConflict:如果您正在使用另一個框架其他地方的網站上

<script type="text/javascript"> 
$(function() { 
    $('.home_banner').cycle({ 
     fx: 'fade' // choose your transition type, ex: fade, scrollUp, shuffle, etc... 
    }); 
    $("#tabs").tabs(); 
}); 
</script> 

,並要堅持在noConflict模式下運行的jQuery,你就必須修改您的jQuery代碼使用jQuery而不是$速記。

jQuery('#'+id+'result').val(result); 

...等


編輯3

現在你看到的錯誤Uncaught TypeError: Cannot read property 'undefined' of undefined在這一行:

result=value_float*curr[curin_id][curout_id]; 

這意味着,在你的情況下,那curin_idcurout_id都是未定義的。因此,您嘗試訪問對象'undefined'curr[curin_id],由於curin_id本身undefined)將產生undefined的屬性'undefined'curout_id)。

的原因,這是下面的代碼:

var curin_id = $("#"+id+"currency_in").attr("selectedIndex"); 
var curout_id = $("#"+id+"currency_out").attr("selectedIndex"); 

selectedIndex不是屬性select但它的一個屬性。雖然屬性是本地JavaScript結構,但您可以在the jQuery documentation中閱讀關於它們的內容。

你的情況簡單的解決將是改變從attr()prop()

var curin_id = $("#"+id+"currency_in").prop("selectedIndex"); 
var curout_id = $("#"+id+"currency_out").prop("selectedIndex"); 

另一種解決辦法是看所選元素的指數,其母公司中:

var curin_id = $('#'+id+'currency_in option:selected').index(); 
+0

非常漂亮! – gdoron 2012-03-06 07:53:18

+0

你能給我一些代碼的想法..做什麼..我與jQuery不太好 – Muzammil 2012-03-06 08:44:04

+0

@Muzammil:請參閱我的編輯 – 2012-03-06 08:51:10