2013-12-15 1 views
0

У меня возникли проблемы с заполнением выбранных плагинов несколькими get с данными из вызова ajax. Я устал, выполнив следующие сообщения,populate selected multiple get plugin с ajax-запросом

Jquery Chosen plugin - dynamically populate list by Ajax

Multiple Select - Chosen jQuery

Jquery chosen ajax call populate multiselelect not working

Но не помогло. Данные просто не заполняются :(мой Ajax запрос следующим образом,

<script type="text/javascript" lang="javascript"> 
function doGetTag() { 
     alert('here');  

     $.ajax({ 
      url: 'index.php/rest/resource/qtag', 
      //data: data,    
      success: function(data) { 
       var jsonObj = JSON.parse(data); 
       var tags = ""; 
       var curVal = document.getElementById('tags').innerHTML; 

       for(var i = 0; i < jsonObj.length; i++) { 
        var tagObj = jsonObj[i]; 
        //document.write("<option>" + tagObj.tagName + "</option>"); 
        var tagHtml = "<option>" + tagObj.tagName + "</option></br>"; 
        tags = tags + tagHtml ; 
       } 

       tagTotal = curVal + tags; 
       document.getElementById('tags').innerHTML = tagTotal;    
       alert(document.getElementById('tags').innerHTML); 
      }, 
      type: "get"  
     }); 
} 
</script> 

который возвращает строку JSON. Данные получает правильно отображается здесь, если я предупрежу его на окне сообщения. Но вопрос как заполнить несколько плагин получить? Ниже мой HTML,

<select data-placeholder="Tag your question here" style="width:350px;height:50px;" multiple class="chosen-select" id="tags"> 
     <option value="" ></option> 

</select> 

Я очень новой для этого плагина и будет очень ценю вашу помощь :)

FYI

Я сделал это с помощью прямого PHP следующим образом,

<select data-placeholder="Tag your question here" style="width:350px;height:50px;" multiple class="chosen-select" id="tags"> 
     <option value="" ></option> 

       <?php 
        $con=mysqli_connect("localhost","user","pass","db"); 
        $result = mysqli_query($con,"SELECT * FROM tags"); 

        while($row = mysqli_fetch_array($result)) 
        { 
         echo"<option>".$row['tagName']."</option>"; 
         echo"</br>"; 
        } 
       ?> 
    </select> 

и правильно отображает данные, но требование проекта утверждает, что это MUST использовать AJAX запрос для заполнения данных. Большое спасибо :) Ваш совет эксперта очень высоко ценится :)

ответ

0

Кулак все проверить URL: «index.php/отдых/ресурс/qtag»,

Это может работать:

success: function(data) { 

    $("#tags").html(data).trigger('liszt:updated'); 

} 

где данные = (эхо Sourse)

< значение параметра = 0> </опция>
< значение параметра = 1> Вариант 1 </опция>
< параметр значение = 2> Вариант 2 </опция>