【问题标题】:Selecting sharepoint elements with jquery使用 jquery 选择共享点元素
【发布时间】:2013-08-15 05:22:58
【问题描述】:

我有两个单选框,但无法将它们设为只读,因此我决定禁用未选中的一个选项。我尝试使用jquery“获取”元素以及我从控制台的单选框上获得的信息。但是,它没有用。我从来没有真正写过 Jquery,所以我很难找到错误。

//priority - disable unchecked radiobox
var high = $("input[value='ct101']");
var reg = $("input[value='ct100']");

if(reg.checked == true){
    high.disabled=true;
}else{
    reg.disabled=true;
}

普通单选框

<input id="ctl00_m_g_0537f4e9_69aa_409a_b5ed_15e3624efeab_ctl00_ctl05_ctl02_ctl00_ctl00_ctl04_ctl00_ctl00"
type="radio" 
value="ctl00" 
disabled="true" 
name="ctl00$m$g_0537f4e9_69aa_409a_b5ed_15e3624efeab$ctl00$ctl05$ctl02$ctl00$ctl00$ctl04$ctl00$RadioButtons"
>

高单选框

<input id="ctl00_m_g_0537f4e9_69aa_409a_b5ed_15e3624efeab_ctl00_ctl05_ctl02_ctl00_ctl00_ctl04_ctl00_ctl01" 
type="radio" 
name="ctl00$m$g_0537f4e9_69aa_409a_b5ed_15e3624efeab$ctl00$ctl05$ctl02$ctl00$ctl00$ctl04$ctl00$RadioButtons" 
value="ctl01" 
checked="checked"
>

【问题讨论】:

    标签: javascript jquery html sharepoint jquery-selectors


    【解决方案1】:

    reg 是 jQuery 包装器引用,而不是 dom 引用,因此它没有 checked 属性,您可以使用 :checked 选择器对它进行测试 .is()

    你需要检查

    if(reg.is(':checked') == true){
        high.disabled=true;
    }else{
        reg.disabled=true;
    }
    

    【讨论】:

      【解决方案2】:

      这里的变量 highreg 是 jquery 包装对象,而不是常规的 dom 对象。

      您的代码的问题是属性 .checked.disabled 可用于 dom 对象而不是 jquery 包装器对象。

      要实现您想要做的事情,请改用以下代码:

      if(reg.is(':checked') == true){
          high.attr('disabled', 'disabled'); 
      }else{
          reg.attr('disabled', 'disabled'); 
      }
      

      有关 jquery 特定内容的更多信息,请访问:

      1. 检查复选框是否被选中 -> 参考this link
      2. 禁用/启用控制->参考this link

      希望对你有帮助!!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-27
        • 2011-09-17
        • 1970-01-01
        • 2019-07-27
        相关资源
        最近更新 更多