2015-12-10 28 views
1

我試過找到這個答案,但沒有成功。如何將類應用於jQuery ajax調用的結果?

我有以下代碼:

jQuery("#categories_parent_id").change(function() { 
      id = jQuery("#categories_parent_id").val(); 
      jQuery.ajax({ 
       type: "GET", 
       url: 'index.php?option=com_jomdirectory&task=getselect&format=raw', 
       dataType: "html", 
       data: "id=" + id, 
       success: function(data) { 
        jQuery('#selectlist').html(data); 
       } 
      }); 
     }); 

AJAX的結果選擇應當具有類「的形式控制」和「選擇的選」,我試圖在AJAX視圖本身添加它們,但它確實不是風格。

我該如何去把問題中的類添加到ajax結果之後的特定選擇中?

感謝

Ĵ

+2

這真的看起來像[XY問題( http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)因爲你想要我猜的是initiali澤選擇了這些元素的插件。添加類'selected-select'將不會執行此操作,而是使用新增的元素調用插件 –

+1

@ A.Wolff正是因爲像你這樣的人,Stack Overflow應該有「買這個傢伙啤酒」功能。因爲你應該喝啤酒。 – Jacques

回答

1

後來編輯,如@ A.Wolff提到你需要調用新添加的選擇元素的插件。

success: function(data) { 
    jQuery('#selectlist').html(data).find('select').chosen(); 
} 

使用.addClass()

success: function(data) { 
    jQuery('#selectlist').html(data).addClass("form-control chosen-select"); 
} 
+0

嗨亞歷克斯 - 這將風格應用到#selectlist div(這是選擇的容器),而不是選擇本身。 – Jacques

+0

好吧,所以select是在ajax響應本身內部,請參閱@ Mohamed-Yousef的答案,它應該可以正常工作,您只需在'data'內找到select元素,'select'就可以找到'add'類的addClass' –

+0

你可以參考的id或類? –

1

嘗試使用.find()找到HTML數據中的元素,然後addClass()

jQuery('#selectlist').html(data).find('select').addClass('form-control chosen-select'); 
+0

嗨Mohamed-Yousef,這確實會添加類,但樣式仍然是默認設置。 – Jacques

+1

@Jacques你問錯了問題...初始化選擇插件而不是'jQuery('#selectlist')。html(data).find('select')。chosen()' –

相關問題