【问题标题】:radio button text in bootstrap引导程序中的单选按钮文本
【发布时间】:2013-08-17 07:58:41
【问题描述】:

我是 bootstrap、jQuery 和 Web 开发的新手。

我想使用 jQuery 更改单选按钮的文本。

这里是 HTML:

<label class="btn btn-primary">
<input type="radio" name="options" id="option1"> Option 1
</label>

我不知道如何选择内部文本(选项1)并更改它。

当我这样做时:

$("label + input").html(question.choices[choice]);

我什么也没得到,我找到了一种解决方法,就是在里面添加另一个标签,如下所示:

<label class="btn btn-primary">
<input type="radio" name="options" id="option1">
<label class="answer"> Option 1</label>
</label>

但我不喜欢这个解决方案,我认为我不需要那个额外的标签。

【问题讨论】:

  • 好的,谢谢你的建议,让我注意到想要添加额外标签的原因之一是,当我这样做时,文本在按钮中没有很好地居中并且按钮看起来很奇怪。
  • 抱歉 - 我的第一条评论搞砸了 :-) 我以为你不想使用“任何”标签元素。下一次尝试:您不必将输入元素包装到关联的标签中。而是为标签定义一个 for - 属性以链接到输入元素。 -->
  • 谢谢,我知道标签和单选按钮,问题是我希望我的单选按钮看起来像按钮。为此,我在这里使用 Bootstrap:getbootstrap.com/javascript/#buttons,而 for 属性在这种情况下不起作用,您必须将输入包装在标签中。
  • 好的 - 我错了,对不起。我认为您已经在下面找到了答案($('label').text() 也可能有效)

标签: jquery twitter-bootstrap radio-button


【解决方案1】:

试试类似的东西

$('#option1').get(0).nextSibling.textContent = 'asdf'

$('#option1').get(0).nextSibling.data = 'asdf'

【讨论】:

  • 正是我一直在寻找的。谢谢
【解决方案2】:

我会像这样将文本放在 span 元素中:

<label class="btn btn-primary">
  <input type="radio" name="options" id="option1"/> <span>Option 1</span>
</label>

然后你可以像这样轻松引用它:

$("label span").html('foo');

【讨论】:

  • 谢谢,但我试图避免添加更多的 HTML 标签,我不知道添加跨度或标签是否更好
【解决方案3】:

试试这个

HTML

<label class="btn btn-primary">
<input type="radio" name="options" id="option1">
<label for="answer"> Option 1</label>
</label>

JS

$('label[for=answer]').html('your text');

【讨论】:

  • Thx 但这与我在问题中提出的解决方法基本相同
猜你喜欢
  • 2016-01-02
  • 1970-01-01
  • 2015-09-11
  • 1970-01-01
  • 2014-12-20
  • 1970-01-01
  • 2021-03-08
  • 1970-01-01
  • 2014-07-24
相关资源
最近更新 更多