单击单选按钮时更改文本
Changing text when clicking radio button
我在同一页上多次列出了以下代码,我希望能够在单击单选按钮时在 foo-title span 元素中显示数据名称值。问题在于,因为 .foo-title span 在 DOM 中多次出现,所以文本在任何地方都在更新,而不是在 1 位。我已经尝试了几种方法,例如 .parent() .最接近.prev() 但无法弄清楚。
标签使用背景图像设置样式,并且文本被隐藏,这就是为什么我想做上述操作以向用户显示一些文本信息以出于可访问性原因。
.HTML
<div class="col-sm-4">
<p class="foo-title">
<span></span>
</p>
<ul class="foo-container-list">
<li class="foo-list-item">
<input class="foo-input" data-name="red" id="foo_id_1" name="foo_id" type="radio" value="1">
<label for="foo_id_1">red</label>
</li>
<li class="foo-list-item">
<input class="foo-input" data-name="green" id="foo_id_2" name="foo_id" type="radio" value="2">
<label for="foo_id_2">green</label>
</li>
<li class="foo-list-item">
<input class="foo-input" data-name="blue" id="foo_id_3" name="foo_id" type="radio" value="3">
<label for="foo_id_3">blue</label>
</li>
</ul>
</div>
.JS
fooBar.updateFooName = function(foo) {
var fooName = foo.data('name');
if (fooName) {
$('.foo-title span').text(fooName);
}
};
$(document).ready(function() {
$("input[name=foo_id]:radio").change(function() {
fooBar.updateFooName($(this));
});
});
fooBar.updateFooName = function() {
var fooName = $(this).data('name');
if (fooName) {
$(this).closest('[class^="col-sm"]').find('.foo-title span').text(fooName);
}
};
$(document).ready(function() {
$("input[name=foo_id]:radio").change(fooBar.updateFooName);
});
小提琴
相关文章:
- 在Javascript中选择Dynamicly Created单选按钮组并显示内部文本
- 将文本框/单选按钮/和下拉列表中的信息添加到dataTable
- PHP使用子窗口中的单选按钮确定从子窗口向父窗口文本区域插入什么
- 内联JavaScript启用/禁用点击单选按钮上的选择和文本框
- 根据文本框中键入的文本筛选单选按钮列表
- 使文本框显示在所选单选按钮旁边
- 根据单选按钮值更改提交按钮文本
- 计数选中的单选按钮的数量,并在文本框中显示该值
- 将所有单选按钮的值打印到文本区域
- 为什么单选按钮的文本没有出现
- 使用javascript循环浏览asp.net单选按钮列表以获取所选值和文本
- 为什么可以't键入文本输入时,单选按钮保持选中状态
- Jquery获取单选按钮旁边文本框的值
- jquery:$(input).keydown无法在单选按钮上设置处理程序,同样的代码也适用于文本
- 单选按钮选中时会打开文本框,但不会'未选中时不要关闭它
- 启用单选按钮的文本框使用 javascript 列出列表项值之一
- 单击编辑按钮时,如何根据另外两个文本框的条件隐藏或禁用单选按钮列表和文本框
- 如果文本框 1、文本框 2、文本框 3 中存在值,如何启用单选按钮 1 和文本框 4
- 在文本框中键入字母的筛选器单选按钮列表
- 使用单选按钮将文本输入动态添加到列表中