2012-07-19 130 views
0

嘗試一旦用戶進行選擇的使用jQuery/Ajax功能這個Jquery腳本有什麼問題?

HTML表單有狀態來填充下拉列表城市...

<?php $allRegions = Region::newInstance()->getStatesByCountry('US'); ?> 



    <select name="regionId" id="regionId"> 

    <?php foreach($allRegions as $region) { ?> 
    <option value="<?php echo $region['value'] ; ?>"><?php echo $region['name'] ; ?></option> 
    <?php } ?> 
    </select> 

     <select name="cityId" id="cityId">Choose a city</select>  

jQuery代碼...

$(document).ready(function(){ 



    $("#regionId").change(function() { 

    var regionId = $(this).val(); 

    var url = '<?php echo site_base_url(true)."?page=ajax&action=cities&regionId="; ?>' + regionId; 

    $.ajax({ 
    type: "GET" 
    url: url, 
    dataType: 'json', 
    success: function(msg){ 
    if (msg != 」){ 
    $("#cityId").html(msg).show(); 

    } 

    } 
    }); 
    }); 
    }); 
    </script> 

的問題是,在選擇城市的下拉菜單中選擇沒有得到填充的區域......不能弄明白。任何幫助表示讚賞。

+1

您遇到什麼錯誤? – 2012-07-19 22:53:11

+0

你看到了什麼問題? – Waterboy 2012-07-19 22:53:57

+1

從互聯網頁面複製代碼...確保擺脫他們使用的*安全格式*。 – 2012-07-19 22:54:35

回答

3

的一個問題是,你有一個奇怪的引號字符:

if (msg != 」){ 

你大概的意思是這樣的:

if (msg != ''){ 
+0

修復了@Raminson指出的另一個問題,但仍然沒有解決問題... – user481913 2012-07-19 22:59:41

+0

Firebug(如果在FireFox中)或控制檯的任何js錯誤? – 2012-07-19 23:00:52

+0

不完全確定如何使用,但我看到沒有在螢火蟲...不在螢幕的控制檯選項以及...並沒有在控制檯的錯誤以及..我真的不知道如果任何錯誤信息是或可以壓制...我正在修改其他開發者編寫的代碼... – user481913 2012-07-19 23:13:29

2

,另一個問題是:

type: "GET" 

,應該是:

type: "GET", 
+0

修復了另一個問題一個以及@Mark指出的,但仍然沒有工作...... – user481913 2012-07-19 23:00:02

0

不要粗魯,但是你的代碼是非常嵌套的,並且不必要的複雜。 修復其他人提到的所有提及,也是這樣的:

<?PHP 
foreach($allRegions as $region) { 
<option value="<?php echo $region['value'];" . "><" . echo $region['name']; . 
"</option>" } ?> 
</select>