2016-04-10 20 views
0

giriş id yıllardan için dizini ve tutucuları yerine metnin </p> <p>

document.getElementById('addplace').addEventListener('click', addplace); 
 

 
j=1; 
 
function addplace() { 
 
    var node = document.createElement("li"); // Create a <li> node 
 
    node.innerHTML = "<input id=''place'+j+' placeholder='+j+' onFocus='geolocate()' type='text' />"    
 
    document.getElementById("waypoints").appendChild(node); 
 
    j++; 
 
}
<ul id="waypoints"></ul> 
 
<input id="addplace" type="submit"/>
çalışan oluşturmak için innerHTML değişken değerini dahil '+ j +' Nihayetinde yer tutucu olarak "Yol Noktası 1" "Yol Noktası 2" "Yol Noktası 3" gibi olmasını istiyorum, aynı şekilde id'in yer olmasını istiyorum 1, yer 2, yer 3, olmasını istiyorum. Yardımlarınız için teşekkür ederim. Birleştirme ile ilgili + işaretini gösteren diğer ilgili soruları gördüm, ancak bu uygulama için çalışıyor gibi görünmüyor.

+1

;' –

cevap

2

Sadece yanlış tırnak işareti kullanıyoruz: Bu mükemmel bir dizeyi bağlamak ve buna göre sayı ekleyecek

node.innerHTML = "<input id='place" + j +"' placeholder='" + j + "' onFocus='geolocate()' type='text' />"; 

.

node.innerHTML = `<input id="place ${j}" placeholder="${j}" onFocus="geolocate()" type="text" />`; 
+0

Müthiş, teşekkürler. – javaandy

2

Ben size "s koymak gerektiğini düşünüyorum: Sadece gelecek için DÜZENLEME

, ES6 "Şablon Strings" SEFA henüz her tarayıcıda kullanılabilir değil oluşturma yeteneğine sahiptir

node.innerHTML = "<input id='place" +j+ "' placeholder='" +j+ "' onFocus='geolocate()' type='text' />" 
+0

Doğru, teşekkür ederim. – javaandy

2

Bu sorunuza bir cevap değil, amakoyarak kodu biraz temiz olabilir: Dizelerinizi sona şöyle bir argüman olarak olay işleyicisi içinegeri arama işlevi: Bu `node.innerHTML = '' gibi

document.getElementById('addplace').addEventListener('click', addplace) 
+0

Yararlıyız. Düzenlenen. – javaandy