js 怎么替换<label>...</label>中包括的提示文字呢?

2017-11-16 20:51:16 +08:00
 miniyao

要把 “显示次数” 替换掉,换成 “第 n 次”,用 js 怎么可以只替换 “显示次数” 这 4 个字呢? 试了下各种方法,要么选不中,要么就是把<input...>一起换没了。

<div class="checkbox">
      <label>
        <input checked="" id="times" name="show_times" value="y" type="checkbox"> 显示次数
      </label>
</div>
2123 次点击
所在节点    JavaScript
11 条回复
alwayshere
2017-11-16 20:53:36 +08:00
你把“现实次数”用 span 包裹起来不行啊??
lhx2008
2017-11-16 20:58:58 +08:00
document.getElementsByTagName("label")[0].childNode[1].nodeValue="第 n 次" 或者 .innerText 或者.InnerHTML
lhx2008
2017-11-16 21:04:37 +08:00
或者选到 input 用 nextSibling 可以选到那个 text 结点,然后用 innerHTML 改就行
miniyao
2017-11-16 21:07:04 +08:00
@alwayshere
@lhx2008

谢谢,页面里 label 太多了,怕定位不准,简单粗暴的采用了 @alwayshere 的建议,直接给 span 加个 id 了事了😄
nciyuan
2017-11-16 21:07:08 +08:00
你头像是抠图的吧。。。
nciyuan
2017-11-16 21:19:52 +08:00
@miniyao mcbbs 上抠图的?
miniyao
2017-11-16 21:23:52 +08:00
@nciyuan 呃,都是脏乱差的活,没人干的苦逼差😭
lslqtz
2017-11-16 21:48:30 +08:00
选 label 内全部 input,按顺序给文本值
laqow
2017-11-16 22:22:21 +08:00
<li>
<input checked="" id="times" name="show_times" value="y" type="checkbox"><label for="times" id="times-label">显示次数</label>
</li>

这样呢?
nciyuan
2017-11-16 22:27:27 +08:00
@miniyao 这么跟你说吧,这头像是我在 MCBBS 上和几个平台上用的,V2 的头像是邮箱关联 Gravatar 的,So,you DT
stillsilly
2017-11-17 14:02:08 +08:00
你这个 label 的用法有点奇怪啊……
<form>
<label for="male">Male</label>
<input type="radio" name="sex" id="male" />
<br />
<label for="female">Female</label>
<input type="radio" name="sex" id="female" />
</form>
一般都是这样写的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/407048

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX