Javascript从输入中获取文本并将其复制到跨度

时间:2016-12-28 17:01:31

标签: javascript html

我正在尝试为复制制作模板并粘贴它有一个输入,我想在其中放入一些文本并按下一个按钮,说明更新并将文本从输入复制到模板中的某个地方

我的尝试:

<!DOCTYPE HTML>
<html>
<head>
<title>Donovan_D Minecraft - Youtube Description 
Template</title>
</head>
<body>
<!--Start Template-->
<div>===================================<br>
My Channel:<br>
https://youtube.com/c/DonovanDMinecraft<br>
===================================<br>
Twitch:<br>
http://twitch.tv/donovan_dmc<br>
Twitter:<br>
http://twitter.com/Donovan_DMC<br>
===================================<br>
Sub2Janabell:<br>
https://youtube.com/channel/UC0NTNba35ADUstIoLm
YLiiA<br>
===================================<br>
My <span style="text-decoration:underline;"  id="v">1.9,
1.10, 1.11</span> Skyblock/Guilds Server:<br>
IP: play.mcpsb.co<br>
Server store:<br>
http://store.mcpsb.co<br>
Server Website:<br>
https://www.mcpsb.co<br>
===================================<br>
Thanks for <span style="text-decoration:underline;"
id="sub">970</span> Subscribers! make sure to like,
comment, subscribe, and Stay Awesome!
===================================<br>
<!--End Template-->
<hr>
NOT PART OF TEMPLATE<br>
</div>
<b>Version:</b><br>
Change: <input id="vr"><br>
<button onclick="ver()">Update Version</button><br>
<hr>
<b>Subscriber Count:</b><br>
Change: <input id="cs"><br>
<button onclick="csub()">Update Subscriber
   Count</button><br>
<hr>
<script type="text/javascript">
function ver() {
document.getElementById("v").textContent =
document.getElementById("vr").value;
}
function csub() {
document.getElementById("sub").textContent =
document.getElementById("cs").value;
}
</script>
</body>
</html>

[我想尝试两次]

我在这里做错了吗?

解决了一件事,是否有办法查看输入是否与跨度中的输入相同或输入是否为空?而且我只想要在它们中使用的数字......有没有办法阻止其他字符/一旦键入它们就替换它们?

对于订阅者Ammount,我想从akshatmittal.com获取实时号码或者为youtube订阅者提供其他一些实时统计服务。有没有办法获得实时订阅者计数没有PHP,ajax或除了JavaScript和HTML之外的任何东西

2 个答案:

答案 0 :(得分:4)

问题是您尝试使用.innerHTML从文本框中获取数据。需要使用.value获得表单字段值。

此外,如果输入到文本框中的数据不包含任何需要解析的HTML,则应使用.textContent将该数据设置为<span>而不是{{1}因为没有任何HTML。

.innerHTML 用于获取/设置表单字段值(复选框,单选按钮,文本框等)或属性值。

.value 用于获取/设置包含HTML标记的非表单字段元素内容。使用它来设置内容时,浏览器将解析所设置值中的任何HTML。

.innerHTML 用于获取/设置不包含HTML标记的非表单字段元素内容。 HTML标记将被忽略。如果没有获取/设置HTML,.textContent是更好的选择,因为它的性能优于.textContent(不必解析任何内容)。

.innerHTML

答案 1 :(得分:-1)

尝试以下脚本更改以获取输入值并更改目标元素的textContent。

https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent

<script type="text/javascript">
function ver() {

document.getElementById("v").textContent = document.getElementById("vr").value;
}
function csub() {
document.getElementById("sub").textContent = document.getElementById("cs").value;
}
</script>