innerHTML(或其他方法):将 li 附加到 ul,<input/> 包括属性
innerHTML (or other method): append li to ul, with <input/> including attributes
document.getElementById('addplace').addEventListener('click', function() {
addplace();
});
function addplace() {
var node = document.createElement("li"); // Create a <li> node
node.innerHTML = "<input/>"
document.getElementById("waypoints").appendChild(node);
}
<ul id="waypoints"></ul>
<input type="submit" id="addplace" />
单击按钮时,上面的代码片段成功地向 ul 添加了一个输入字段。但是,当我将属性添加到输入字段时,提交按钮不再有效。
document.getElementById('addplace').addEventListener('click', function() {
addplace();
});
function addplace() {
var node = document.createElement("li"); // Create a <li> node
node.innerHTML = "<input class="field" placeholder="Where to begin?" onFocus="geolocate()" type="text" />"
document.getElementById("waypoints").appendChild(node);
}
<ul id="waypoints"></ul>
<input type="submit" id="addplace" />
谢谢。
您必须转义 ("\""
) 字符串中的双引号或使用单引号 ("'"
) 代替双引号来解决您的问题。
function addplace() {
var node = document.createElement("li"); // Create a <li> node
node.innerHTML = "<input class='field' placeholder='Where to begin?' onFocus='geolocate()' type='text' />"
document.getElementById("waypoints").appendChild(node);
}
转义双引号的解决方法,
node.innerHTML = "<input class=\"field\" placeholder=\"Where to begin?\" onFocus=\"geolocate()\" type=\"text\" />"
document.getElementById('addplace').addEventListener('click', function() {
addplace();
});
function addplace() {
var node = document.createElement("li"); // Create a <li> node
node.innerHTML = "<input/>"
document.getElementById("waypoints").appendChild(node);
}
<ul id="waypoints"></ul>
<input type="submit" id="addplace" />
单击按钮时,上面的代码片段成功地向 ul 添加了一个输入字段。但是,当我将属性添加到输入字段时,提交按钮不再有效。
document.getElementById('addplace').addEventListener('click', function() {
addplace();
});
function addplace() {
var node = document.createElement("li"); // Create a <li> node
node.innerHTML = "<input class="field" placeholder="Where to begin?" onFocus="geolocate()" type="text" />"
document.getElementById("waypoints").appendChild(node);
}
<ul id="waypoints"></ul>
<input type="submit" id="addplace" />
谢谢。
您必须转义 ("\""
) 字符串中的双引号或使用单引号 ("'"
) 代替双引号来解决您的问题。
function addplace() {
var node = document.createElement("li"); // Create a <li> node
node.innerHTML = "<input class='field' placeholder='Where to begin?' onFocus='geolocate()' type='text' />"
document.getElementById("waypoints").appendChild(node);
}
转义双引号的解决方法,
node.innerHTML = "<input class=\"field\" placeholder=\"Where to begin?\" onFocus=\"geolocate()\" type=\"text\" />"