2010-09-16 1 views
15

После попытки добавления некоторого кода в div-слой я получил следующую ошибку и не знаю почему.Не удалось преобразовать аргумент javascript

неперехваченное исключение: [Exception ... "Не удалось преобразовать аргумент JavaScript аргумент 0 [nsIDOMDocumentFragment.appendChild]" nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)" место: «JS рамки :: http://code.jquery.com/jquery-latest.min.js :: анонимным :: строка 113 ": нет]

Ниже приведен код, вызывающий ошибку. Я понимаю, что есть некоторый чрезмерный код, но я сделал это таким образом, чтобы его можно было легко использовать для будущих функций. Просто ищете какие-либо предложения об ошибке? Спасибо! :)

function catSelect(itm){ 

    //params for query 
    var params = { 
    category: itm 
    }; 

    var cmd = jQuery.param(params); 

    $.ajax({ 
    async: false, 
    type: "POST", 
    cache: false, 
    url: "views/gallery.php", 
    data: cmd, 
    dataType: "json", 
    success: function(resp){ 
    if(resp.status == "ok") { 
    $('#project').empty(); 
    //alert(resp.projects[0]);alert(resp.files[0]); alert(resp.titles[0]); 
    var check = 0; 
    var projGallery = new Array(); 
    for(var i in resp.projects){ 
     if(check!=resp.projects[i] || check == 0){ 
     projGallery[i] ='<a class="group" title="'+resp.titles[i]+'" href="images/gallery/"'+resp.files[i]+'" rel="'+resp.projects[i]+'" ><img class="group" alt="" src="../images/gallery/thumbs/"'+resp.files[i]+'"/></a>'; 
     } else { 
     projGallery[i] ='<a class="group" rel="'+resp.projects[i]+'" href="images/gallery/"'+resp.files[i]+'" title="'+resp.titles[i]+'"></a>'; 
     } 
     check = resp.projects[i]; 
    } 
    //alert(projGallery[0]); 
    alert(projGallery); 
    $('#project').append(projGallery); 
    } else { 
    alert("Failed to select projects"); 
    } 
    } 
    }); 
} 

+0

спасибо за редактирование. Я постараюсь сделать это лучше. – Adgezaza

+0

ах. Вы добавляете массив. Не html – mplungjan

ответ

16

Я не думаю, что вы можете добавить массив. Изменение:

$('#project').append(projGallery); 

To:

$.each(projGallery, function(idx, val) { 
    $('#project').append(val); 
}); 
+0

, который работает! благодаря! – Adgezaza

+0

Одна из проблем при использовании цикла для добавления его, похоже, не хочет правильно помещать путь href: «« Вы можете заметить, что имя изображения помещено раньше. Это можно как-то исправить? – Adgezaza

+0

глупая ошибка. я починил это. еще раз спасибо! – Adgezaza

 Смежные вопросы

  • Нет связанных вопросов^_^