2013-07-06 2 views
0

Я использую .text(), чтобы добавить к div. Я не знаю, сколько я буду добавлять. Но если я использую .text() больше, то как только он просто добавит последний. Я использовал .text(msg1,msg2,msg3), и это работает для меня, но я бы хотел, чтобы текст был более упорядоченным. как после каждого сообщения начнется новая строка. Я попытался добавить пробелы, но это не работает, и я не хочу этого делать. У меня просто был div, я попробовал добавить, <p> к нему, я попробовал $("p:first") попробовал ID. Я включил скрипку.Правильный способ добавить в div?

http://jsfiddle.net/G24aQ/12/

if(k1<10){ 
    msg1= "This will not space like a want." + " " 
    msg2= "I don know why not.  " 
    msg3= "How come.  " 
    $('#output1').text(msg1); 
    $('#p').text(msg2); 
    $('#output1').text(msg3+"  "+msg2+"  "+ msg1); 
} 

ответ

2
  1. Вы можете использовать <br/>, чтобы добавлять сообщения в новые строки.
  2. Вы можете использовать html вместо text и добавить все это сразу. Чтобы добавить один за другим, используйте html и append вместе.

Демо: http://jsfiddle.net/G24aQ/14/

if (k1 < 10) { 
     msg1 = "This will not space like a want.<br/>"; 
     msg2 = "I don know why not.<br/>"; 
     msg3 = "How come.<br/>"; 
     $('#output1').html(msg3 + msg2 + msg1); //this will add all the three variables together into #output1 - replacing older content 
     /* 
     //To add one by one 
     $("#output1").html(msg3); // this will erase the older content so that you have a clean #output1 div 
     $("#output1").append(msg2); //this will add to the existing content, will not over write it 
     $("#output1").append(msg1); //this will add to the existing content, will not over write it 
     */ 
} 

Всегда имейте в виду, что html() & text() сотрет все в селекторе и добавить новое содержание в нем. append добавляет к существующему контенту. И ваши теги HTML будут проигнорированы, если используется text().

Документы для html & append для дополнительной информации.

+0

работает идеально и легко добавить с Append! Я буду использовать ваш пример, но мне интересно, какая разница между использованием вашего ответа и ответом Антонио Регадаса. – user2537145

1

Вы должны использовать $(id).append (code);, если вы хотите добавить , чтобы не изменить.

0

Вы должны использовать append для этого, как:

if (k1 < 10) { 
     msg1 = "This will not space like a want.<br/>"; 
     msg2 = "I don know why not.<br/>"; 
     msg3 = "How come.<br/>"; 
     $('#output1').append('<p>'+msg1+'</p>'+'<p>'+msg2+'</p>'+'<p>'+msg3+'</p>'); 
} 

и использовать HTML тег как <p>, чтобы сделать их в новых линиях.

Вы также можете сделать это следующим образом:

if (k1 < 10) { 
    msg1 = "This will not space like a want.<br/>"; 
    msg2 = "I don know why not.<br/>"; 
    msg3 = "How come.<br/>"; 
    var e = $('<p>'+msg1+'</p>'+'<p>'+msg2+'</p>'+'<p>'+msg3+'</p>'); 
    $('#output1').append(e); 
} 
1

Насколько я помню, HTML только делают лишние пробелы, как один. Вы должны использовать

&nbsp; 

или поместить каждый текст внутри тега диапазона с правого края

<span style="margin-right:10px"></span> 
Смежные вопросы