2012-10-22 104 views
1

我剛剛開始學習AJAX,並試圖構建從數據庫中提取信息的級聯下拉列表。我的AJAX.Updater代碼有效,但不僅適用於其中一個下拉列表。我如何進行多個AJAX.Updater調用?原型AJAX更新器多個請求

<script type="text/javascript" src="jQuery/jquery-latest.js"></script> 
<script type="text/javascript" src="jQuery/prototypejs.js"></script> 
<script language="javascript"> 
jQuery(document).ready(function() 
{ 
    jQuery('#regiondropdown').change(function() { 
    dropdowns(jQuery(this).val(),"foo"); 
    }); 

    jQuery('#foodropdown').change(function() { 
    dropdowns(jQuery(this).val(),"bar"); 
    }); 

} 
); 

function dropdowns(str,type) 
    { 
     if (type=="foo") { 
     new Ajax.Updater('foo', 'foo_dropdown.php', { method: 'get', parameters: {foo: str} }); 
     } else if (type=="bar") { 
     new Ajax.Updater('bar', 'bar_dropdown.php', { method: 'get', parameters: {bar: str} }); 
     } 
    } 

</script> 
+1

只是想知道爲什麼你想的jQuery +原型結合要麼會做對自己 –

回答

0

我看不到它是什麼,所以我建議你啓動你的調試器。
1)檢查兩種情況下的jQuery(this).val()的值。 「這個」可能不是你所信奉的Javascript。
2)檢查如果切換if ...和else ...下拉菜單會發生什麼情況。也許有一個({或;格格不入

HTH

+0

我添加的警報檢查兩個值。 jQuery(this).val()和它們都會返回期望的值,奇怪的是第二個SELECT在第一個SELECT之後被選中時不會發出警報,如果您先選擇第二個SELECT,則會顯示該警報。 – Nate23VT