[英]Create text in <p> tag in depend on <select> tag, javascript
I want to create p tag with text(or something like that) after input tag, that inform user about value he/she type in this field, before this user select country in select tag. 我想在输入标签之后创建带有文本(或类似内容)的p标签,该标签告知用户有关他/她在此字段中输入的值,然后该用户在选择标签中选择国家/地区。
For example: 例如:
User select USA: after input must appear "USD" 用户选择美国:输入后必须显示“ USD”
User select England: after input must appear "GBP" 用户选择英格兰:输入后必须显示“ GBP”
And explain please why my code doesn't work, is it the right way? 并解释一下为什么我的代码不起作用,这是正确的方法吗?
JS: JS:
function insertAfter(referenceNode, newNode)
{
referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
}
function createText()
{
var selectValue = document.getElementById("money").value;
var CashInput = document.getElementById("cash");
var temp = document.createElement("p");
if (selectValue == "pound")
{
var text = "GBP";
temp.appendChild(text);
insertAfter(CashInput, temp);
}
}
HTML: HTML:
<select id="money" onchange="createText();">
<option value="pound">England</option>
<option value="doll">USA</option>
</select>
<input id="cash">
I'd suggest using an existing element and just changing it's innerText attribute. 我建议使用现有元素,然后更改它的innerText属性。 Here is a functioning example.
这是一个有效的示例。
function insertAfter(referenceNode, newNode) { referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling); } function createText() { var selectValue = document.getElementById("money").value; var CashInput = document.getElementById("cash"); if (selectValue == "pound") { var text = "GBP"; } else if (selectValue == "doll") { text = "USD"; } document.getElementById("currency").innerText = text; } createText();
<select id="money" onchange="createText();"> <option value="pound">England</option> <option value="doll">USA</option> </select> <input id="cash"> <span id="currency"></span>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.