2016-01-17 28 views
0

我想在我的選擇類型字段值US中設置某人時更改地址數據模板(街道,家庭號碼,城市代碼等)。 我已經做了這樣的div的東西,但我有問題,當這些數據是在ul類型。如何使用帶有ul元素的jQuery .html()函數?

我沒有太多的jQuery的expirience。 你能告訴我哪裏有錯誤,或者我如何在ul元素上使用.html函數?

這是HTML代碼(我使用的是開放式電源模板):

<ul class="address" id="profileAddressDefault"> 
<li> 
{u:@$form::getElement('address_city_code')}{u:$form::getElement('address_city_name')} 
</li> 
<li> 
{u:$form::getElement('address_street')} 
{u:$form::getElement('address_street_hn')} 
{u:entity('nbsp')}/{u:entity('nbsp')} 
{u:$form::getElement('address_street_an')} 
</li> 
</ul> 
<ul class="address" id="profileAddressUs" style="display: none;"> 
<li> 
{u:$form::getElement('address_city_name')} 
{u:@$form::getElement('address_city_code')} 
</li> 
<li> 
{u:$form::getElement('address_street_hn')} 
{u:entity('nbsp')}/{u:entity('nbsp')} 
{u:$form::getElement('address_street_an')} 
{u:$form::getElement('address_street')} 
</li> 
</ul> 

這是我的jQuery代碼:

$j('#country_id').change(function() { 

    if($j('#country_id').val()=='US') { 
     $j('#profileAddressDefault').html($j('#profileAddressUs').html()); 
    } 
}); 
+0

檢查控制檯,看看你會得到什麼錯誤。 – Sam

+0

但控制檯告訴我,我沒有一些庫,這是不需要我的方法。沒有更多 – Leszek

+0

你可以發佈你的控制檯的輸出嗎?這將有助於提供清晰度。 – gnerkus

回答

0
$j('#profileAddressDefault').html($j('#profileAddressUs').html()); 

假設附加$ J( '#profileAddressUs')。html()返回一個元素ID:

.html($j('#profileAddressUs').html()); 

上面的代碼缺少用於選擇內部ID的「#」。

更好的辦法做到這一點:

$j('#country_id').change(function() { 
    if($j('#country_id').val()=='US') { 
     var elemID = "#" + $j('#profileAddressUs').html(); 
     $j('#profileAddressDefault').html(elemID); 
    } 
}); 
+0

$ j('#profileAddressUs')。html()返回一個html代碼。這段代碼應該用#profileAddressDefault ID替換ul中的代碼 – Leszek

相關問題