网站首页收藏本站

FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

FineUI首页 WebForms - MVC - JavaScript 常见问题 - QQ群

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

FineUICore v4.0.0发布了(Windows、Mac、Linux) FineUI(专业版)v4.0.0发布了(全新CSS3动画) 支持FineUI(开源版),购买FineUI.Design商业授权

查看: 197|回复: 5

请问怎么通过js获取RadioButtonList的值?

[复制链接]
发表于 2017-8-13 23:37:36 | 显示全部楼层 |阅读模式
<script type="text/javascript">
        var RadioButtonList5ID = '<%= RadioButtonList5.ClientID %>';
        var FormRow17ID = '<%= FormRow17.ClientID %>';

        F.ready(function () {
            $('#' + RadioButtonList5ID + ' input').change(function (event) {
                alert(F(RadioButtonList5ID).getValue());
                var SelectVal = $(":input:radio[@name='#" + RadioButtonList5ID + " > input'][checked]").val()
                if (SelectVal == "HyperLink") {
                    $("#" + FormRow17ID).css("display", "block");
                }
                else {
                    $("#" + FormRow17ID).css("display", "none");
                }
            });
        });  
    </script>
通过以上代码获取的值是 “[object Object]”,SelectVal 值取不出来,请问怎样才能获取到RadioButtonList选中的值呢?
谢谢

发表于 2017-8-14 09:51:26 | 显示全部楼层
有示例,使用组件提供的方法,不是jQuery获取节点的方式:http://fineui.com/demo/#/demo/form/radiobuttonlist.aspx
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-14 12:59:24 | 显示全部楼层
sanshi 发表于 2017-8-14 09:51
有示例,使用组件提供的方法,不是jQuery获取节点的方式:http://fineui.com/demo/#/demo/form/radiobutton ...

老大你好,我改用你给的事例方式了。我的RadioButtonList是后台绑定的,前台js用你的方法,不管怎么选都是第一个值,请问应该如何解决?
谢谢
回复 支持 反对

使用道具 举报

发表于 2017-8-14 16:47:32 | 显示全部楼层
为什麽 发表于 2017-8-14 12:59
老大你好,我改用你给的事例方式了。我的RadioButtonList是后台绑定的,前台js用你的方法,不管怎么选都 ...

请基于空项目重现问题,并上传
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-14 23:24:25 | 显示全部楼层
sanshi 发表于 2017-8-14 16:47
请基于空项目重现问题,并上传

是这样的
"<script type="text/javascript">
        var RadioButtonList5ID = '<%= RadioButtonList5.ClientID %>';

        F.ready(function () {
            var list2 = F(RadioButtonList5ID);
            var selectedRadio = list2.getValue();
            $('#' + RadioButtonList5ID + ' input').change(function (event) {
                alert(selectedRadio[list2.name]);
            });
        });

        function alertSelectedValue() {
            var list2 = F(RadioButtonList5ID);
            var selectedRadio = list2.getValue();
            if (Ext.Object.isEmpty(selectedRadio)) {
                top.F.alert("列表一没有选中项!");
            } else {
                top.F.alert("列表一选中项的值:" + selectedRadio[list2.name]);
            }
        }  
    </script>"

我用$('#' + RadioButtonList5ID + ' input').change 每次取都是默认选中的那项,
而用按钮来执行alertSelectedValue 函数时,就正常。
是不是不能用jquery的change的方式?
那有没有什么方法可以每次选中一项就做后续处理呢?
谢谢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-15 23:39:59 | 显示全部楼层
sanshi 发表于 2017-8-14 09:51
有示例,使用组件提供的方法,不是jQuery获取节点的方式:http://fineui.com/demo/#/demo/form/radiobutton ...

请问老大,我改成下面这个方法
<f:RadioButtonList ID="RadioButtonList5" runat="server" Label="数据列类型">
                                        <Listeners>
                                            <fistener Event="change" Handler="function (RadioButtonList, newValue, oldValue, eOpts) { alert(RadioButtonList.getValue()); }" />
                                        </Listeners>
                                    </f:RadioButtonList>
alert(RadioButtonList.getValue()和alert(newValue)显示的都是[object Object],请问如何才能取到实际的选择值呢?
谢谢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|FineUI 官方论坛 ( 皖ICP备13005369号-1 )  

GMT+8, 2017-12-18 15:08 , Processed in 1.090940 second(s), 26 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表