jQuery根据用户选择启用/禁用asp.net控件

jQuery enable/disable asp.net controls based on user selection

本文关键字:禁用 asp net 控件 启用 用户 选择 jQuery      更新时间:2023-09-26

我正在从asp.net-生成以下重复标记

        <tr id="trRow0" class="trClass">
            <td id="cell0" class="tdClass">
                <input id="MainContent_rptColleges_rbCollege_0" type="radio" name="ctl00$MainContent$rptColleges$ctl01$rbCollege" value="mit" />
                mit
            </td>
            <td>
                <ul>
                    <li>
                        <input id="MainContent_rptColleges_rptCourses_0_rbCourse_0" type="radio" name="ctl00$MainContent$rptColleges$ctl01$rptCourses$ctl01$rbCourse" value="computer science" />
                        &nbsp; computer science
                    </li>
                    <li>
                        <input id="MainContent_rptColleges_rptCourses_0_rbCourse_1" type="radio" name="ctl00$MainContent$rptColleges$ctl01$rptCourses$ctl02$rbCourse" value="mechanical engg." />
                        &nbsp; mechanical engg.
                    </li>
                </ul>
            </td>
        </tr>
        <tr id="trRow1" class="trClass">
            <td id="cell1" class="tdClass">
        **...
        ...**

一旦用户单击任意一行的学院单选按钮,就必须启用包含子单选按钮。选择其他行后,应重置/禁用先前选择的子单选按钮。

我使用jQuery获得了一半的成功,通过以下代码获得选定的行TR ID,

    $(document).ready(function myfunction() {            
        $('[id*=rbCollege]').click(function (e) {
            var selectedCollegeRow = jQuery(this).parent().parent().attr("id");
            $(selectedCollegeRow).find('input[name$=rbCourse]'). //code to enable disable radio
        });
    });

我还缺少什么其他信息?

设置disabled属性:

$(document).ready(function myfunction() {            
    $('[id*=rbCollege]').click(function (e) {
        var selectedCollegeRow = jQuery(this).parent().parent().attr("id");
        $(selectedCollegeRow).find('input[name$=rbCourse]').attr('disabled', 'true');
    });
});