2010-09-08 3 views
1

Я использую Cytoscape Web для генерации карт генов. Ему нужна строка для рисования, и у меня есть файлы XGMML, поэтому я использовал JQuery для получения файла XGMML и превращения их в строки. Вот мой код:XMLSerializer to string (JQuery) для Cytoscape

$.get("ENSG00000148606.xgmml", function(data) { 
     if (typeof data !== "string") { 
     if (window.ActiveXObject) { // IE 
     data = data.xml; 
     } else { 
     data = (new XMLSerializer()).serializeToString(data); 
     } 
     } 
     vis.draw({ network: data }); //Line that draws the map. It's from Cytoscape Web. 

    }); 

он отлично работает на IE, но когда я пытаюсь использовать другие браузеры, я ничего не получаю. Я попытался выяснить, что не так с помощью alert (data);, и я получаю пустое поле предупреждения для всех браузеров, кроме IE.

Любые идеи?

ответ

0

Я не уверен, что все браузеры внедрили XMLSerializer. Возможно, вы можете анализировать свои данные в сторонней библиотеке или сворачивать свои собственные.

0

Вы пробовали $ .ajax вместо получения. Это поможет убедиться, что данные действительно распознаются в XML перед его сериализацией.

$.ajax({ 
    url: 'ENSG00000148606.xgmml', 
    type: 'GET', 
    dataType: 'xml', 
    timeout: 1000, 
    error: function(){ 
     alert('Error loading XML document'); 
    }, 
    success: function(data){ 
     data = (new XMLSerializer()).serializeToString(data); 
     vis.draw({ network: data}); 
    } 
}) 
+0

На самом деле я это сделал, и это сработало! Большое спасибо. – dhargan