XMLSerializer в строку (JQuery) для Cytoscape - PullRequest
1 голос
/ 08 сентября 2010

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

$.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.

Ответы [ 2 ]

0 голосов
/ 15 сентября 2010

Вы пробовали $ .ajax вместо get.Это поможет убедиться, что данные действительно распознаются в 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 голосов
/ 08 сентября 2010

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

...