繁体   English   中英

如何在Jquery中更改变量的属性?

[英]How to change an attribute of a variable in Jquery?

我正在努力解决一些基本问题,但似乎无法解决。

以下内容非常适用:

switch (url_param) {
    case '80':
        $('input[name=power][value=80]').prop('checked', true);
        break;
    case '90':
        $('input[name=power][value=90]').prop('checked', true);
        break;
    case '99':
        $('input[name=power][value=99]').prop('checked', true);
        break;
}

但是,我必须与页面上的许多不同输入进行交互,因此我想首先将它们存储到变量中,例如

$input_power = $('input[name=power]');

如何使用变量获得相同的结果?

您可以使用filter()方法过滤出匹配的元素。

将匹配元素的集合减少到与选择器匹配或通过功能测试的元素。

var $input_power = $('input[name=power]');
switch (url_param) {
    case '80':
    case '90':
    case '99':
        $input_power.filter(function(){
            return parseInt(this.value, 10) == parseInt(url_param, 10);
        }).prop('checked', true);
        break;
}

在上面的示例中,我改进了代码,并将parseInt(str, radix)用于整数。

删除开关案例语句,仅使用一行

$('input[name=power][value='+ url_param +']').prop('checked', true);

尝试这个:

var myInput = $('input[name=power][value=80]');

稍后在代码中的某个位置:

$(myInput).prop('checked', true);

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM