读取单选按钮列表的值
Read values of radiobutton list
我有具有相同 id 的单选按钮列表。 我正在尝试读取每个单选按钮的值,但我的代码总是只读取第一个单选按钮的值。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
$(document).ready(function () {
$("#rdodoc").click(function () {
var val = $("[id=rdodoc]").val()
alert(val);
});
});
</script>
@foreach (ReadWord.Models.Document item in ViewBag.lstdocs)
{
@Html.RadioButton("rdodoc", item.Name)
<label>@item.Name</label>
}
而不是id
使用class="rdodoc"
,这是正确的方法。
$(document).ready(function () {
$(".rdodoc").click(function () {
var val = $(this).val()
alert(val);
});
});
使用上面的代码,当您单击单选按钮时,它的值将被提醒
元素的ID应该是唯一的。重复的 ID 会使您的 html 文档无效,通过 ID 访问这些元素只会返回找到的第一个元素。如果要对单选按钮进行分组,请使用 name 属性执行此操作。要获取这些值,您可以使用其唯一 ID 进行迭代。
有许多具有相同 id 的元素是无效的 html。此外,您的选择器将仅将 click 事件绑定到一个元素。请改用类,如下所示:
<script>
$(document).ready(function () {
$(".rdodoc").click(function () {
var values = $('.rdodoc').map(function(e) { return $(this).val(); });
$.each(values, function(e, v) { alert(v); });
});
});
</script>
@foreach (ReadWord.Models.Document item in ViewBag.lstdocs)
{
@Html.RadioButton("rdodoc", item.Name, new { @class = "rdodoc" })
<label>@item.Name</label>
}
你还需要在你的JavaScript中运行一个循环。现在你只得到 1 个值,这就是你看到第一个值的原因。,然后将 ID 更改为名称或类。
$( ".rdodc" ).each(function( index ) {
alert( index + ": " + $( this ).val() );
});
这将提醒每个单选按钮值。
相关文章:
- 客户端单选按钮列表验证
- 谷歌应用程序脚本示例-如何更改单选按钮的列表框相关值
- Javascript/Jquery将选择列表更改为单选按钮
- 将文本框/单选按钮/和下拉列表中的信息添加到dataTable
- 如何根据是否通过jsp中的jstl选中单选按钮来启用和禁用下拉列表
- 根据文本框中键入的文本筛选单选按钮列表
- 如何使用 ajax 从 sql Server 获取单选按钮的值,并表示列表单选按钮
- ASP.NET 显示单选按钮列表和下拉列表的进度条/加载
- 如何将单选按钮名称列表传递给springcontroller,并将其显示到成功页面
- 使用javascript循环浏览asp.net单选按钮列表以获取所选值和文本
- 如何更改已从单选按钮列表中选择的单选按钮的颜色
- 启用单选按钮的文本框使用 javascript 列出列表项值之一
- 单击编辑按钮时,如何根据另外两个文本框的条件隐藏或禁用单选按钮列表和文本框
- 单选按钮列表列表 - 只允许选择一个
- 在文本框中键入字母的筛选器单选按钮列表
- 使用单选按钮将文本输入动态添加到列表中
- 按 ID 验证 JavaScript 中的列表框和单选按钮
- 删除内容占位符中的单选按钮列表单选按钮
- 检查所有单选列表单选按钮是否已在 GridView 上选中
- 选择根据用户选择设置下拉列表(单选按钮)