2010-02-17 1 views
2

Привет, ребята У меня очень странная проблема, например, с функцией добавления. В основном я получаю данные из вызова ajax в xml. Разберите xml в переменные, а затем добавьте каждую функцию к определенному div. Работает отлично в firefox, чтобы сделать работу, чтобы заставить файл разбираться, т.е. Пожалуйста, обратите внимание, «все работает» мелкий мой переменные и т.д. все имеет значение и т.д.Проблема с jQuery append в ie7

Однако, когда я использую функцию дописать текст случайным образом появляется вне его, содержащий ДИВЫ см рисунка ниже:

alt text http://www.freeimagehosting.net/uploads/e21468dd49.png

Как вы можете видеть, что какой-то текст переполняет контейнер или кажется почти отраженным? Любой способ, приведенный ниже, - это фрагмент кода, в котором я делаю добавление: я также должен добавить. Я открываю этот div в диалоговом окне, созданном с помощью jquery ui, который устанавливает отображаемый div: block - так что мне интересно, оказывает какое-либо влияние.

$(xml).find("entry").each(function() 
{ 

var $item = $(this); 
var title = $item.find("title").text(); 
var linkN = $item.find("link").attr("href"); 
var output = "<a href=\"" + linkN + "\" target=\"_self\">" + title + "<\/a>" + "<br />"; 
$("#notifyBox").append($(output)); 
$('#notifyBox').show(); 
}); 

Надеюсь, вы, ребята, можете помочь, это самая странная проблема, с которой я когда-либо сталкивался.

+0

вы видите ничего странного в источнике зрения? – Lazarus

+0

нет источника, который выглядит хорошо - посмотрел в сгенерированном источнике, и все кажется, что все в порядке. все теги закрыты должным образом и т. д. просто очень трудно решить, поскольку не может показаться очевидными проблемы. – jonnyhitek

+0

Как правило, я всегда использую одинарные кавычки для установки элементов String в JavaScript. Это дает вам возможность использовать двойные кавычки при динамическом построении разметки и устраняет головные боли, связанные с необходимостью избежать всего. Просто немного подсказки. :) – markedup

ответ

0

Ну, похоже, что один поплавок на коробке с содержимым (поплавок: слева) - вызывал проблему - pesky ie - в любом случае надеюсь, что это поможет кому-то, если у них будет такая же проблема. Благодаря Ник Craver надежды помогла мне вновь фактор моего кода немного - ура

2

Попробуйте вместо этого:

$(xml).find("entry").each(function() 
{ 
    var $item = $(this); 
    var title = $item.find("title").text(); 
    var linkN = $item.find("link").attr("href"); 
    var output = "<a href='" + linkN + "' target='_self'>" + title + "</a><br />"; 
    $("#notifyBox").append($(output)).show(); 
}); 

Я считаю, что ваш <\/a> вызывает проблемы, нет необходимости, чтобы избежать слэш, браузер не видит его как незамкнутой элемент.

+0

Cheers Nick, did'nt не имеет значения, однако, благодаря вашему предложению, мой код немного больше потоковой линии - это всегда повод. спасибо за ваш ввод – jonnyhitek

+0

@jonathan - Можете ли вы опубликовать html-разметку? Помогло бы это понять –

1

Я решил эту проблему:

var a = '<span>Attachment: '+Filedata.substr(Filedata.lastIndexOf('\\')+1).toLowerCase()+'</span>'; 
var b = '<span ><a href="#" class="remove_link" style="cursor:pointer; ">Remove</a></span></br></br>'; 
       var c = a+' '+b; // use instead of append 
       $('div.attach_file').hide(); 
       $('div.Multi_Attach_file').show().html(c); // display c 

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

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