2011-09-11 25 views
28

İçinde bir metin bulunan <div> gibi bir HTML öğesine sahip olduğum veya başka bir öğe ekleyebilmeden önce veya sonra bu bölümün bir html öğesi olmayan bazı metin verileri, sadece düz metin ekleyebilir miyim?Bir HTML öğesinden önce veya sonra metin ekleme

Sadece saf Javascript kullanmak istiyorum. gibi

şey:

<div id="parentDiv"> 
    my text must be added here 
    <div id="childDiv"></div> 
</div> 

cevap

43

Evet, Sonra appendChild veya insertBefore ile, bir öğe gibi takabilirsiniz document.createTextNode('the text')

içeren bir metin düğümü oluşturabilir.

böyle
var text = document.createTextNode('the text'); 
var child = document.getElementById('childDiv'); 
child.parentNode.insertBefore(text, child); 
+8

Ayrıca "insertAdjacentText" veya "insertAdjacentHTML" yöntemlerini de deneyebilirsiniz: https://developer.mozilla.org/en-US/docs/Web/API/Element.insertAdjacentHTML –

1

Metin düğümü ekleyebilirsiniz. Düğüm oluştur - document.createTextNode('text') ve sonra ekle/ekle/değiştir - ne istersen yap.

1

şey yapmalı:

<script type="text/javascript"> 
    var parent = document.getElementById('parentDiv'); 
    var sibling = document.getElementById('childDiv'); 
    var text = document.createTextNode('new text'); 
    parent.insertBefore(text, sibling); 
</script> 
26

Sadece kayıt için: #childDiv önce metin eklemek

Örnek

div.insertAdjacentHTML('beforeBegin', yourText); 

div aşağıdadır çocuk DIV. childTag değilse

var text = document.createTextNode("my text must be added here."); 
    var childTag = document.getElementById("childDiv"); 

    childTag.parentNode.insertBefore(text, childTag.nextSibling); 

:

Canlı tanıtım: önce veya sonra konuya ilişkin ve kullanıcılara isehttp://jsfiddle.net/ZkzDk/

+0

Ayrıca, sonra da ekleyebilirsiniz ... div.insertAdjacentHTML ('afterEnd', 'metnim sonradan eklendi'); Bunu kaldırabileceğinizi bilen var mı? (sınıf veya kimlik kullanmadan) – tkerwood

+0

@tkerwood Elbette. Bu * Metin * düğümüne bir başvuru almanız ve daha sonra '.removeChild()' yöntemini (üst öğesinde) kullanmanız gerekir. –

1

eklemek için soru, burada sonra bir örnektir herhangi bir kardeşi var, tamam, çünkü insertBefore yöntemi bu davayı ele alıyor ve basitçe son çocuk olarak ekliyor.

Ayrıca, metin düğümü oluşturduktan sonra appendChild() yöntemini kullanabilir ve ardından childTag öğenizi parentNode aracılığıyla ekleyebilirsiniz.

İlgili konular