通过javascript函数引用控件

时间:2009-07-10 22:23:49

标签: asp.net javascript

我在gridview中有一个radiobutton列,在许多嵌套的asp表中。我希望无线电在点击时启用两个按钮。所以我添加了以下函数javascript,但它找不到我的控件,虽然我为这些按钮转为ClientIDMode =“Static”。它返回null。

<asp:GridView ID="gridView_stLists" runat="server" AutoGenerateColumns="False" CellPadding="3"
                                                    BorderStyle="NotSet" CssClass="table_layout" Width="500">
                                                    <RowStyle CssClass="table_body" />
                                                    <Columns>
                                                        <asp:TemplateField HeaderStyle-Width="20">
                                                            <ItemTemplate>
                                                                <input name="radioBtn_res" type="radio" value='<%# Eval("uri") %>' onclick="rdBtn_onClick()" />
                                                            </ItemTemplate>

<script language="javascript" type="text/javascript">

function rdBtn_onClick()
{
document.getElementById("btn_delete_list").enable=true;
document.getElementById("btn_showRes").enable=true;

}
    </script>

问题可能来自脚本标签吗?我把它放在内容标签下。

2 个答案:

答案 0 :(得分:1)

  

问题可能来自脚本标签吗?我把它放在内容标签下。

没有。

按钮在哪里?查看生成的html源代码。那里的按钮是否有您正在寻找的ID?

此外,它应该是element.disabled = false,而不是element.enable = true

答案 1 :(得分:1)

将您的JavaScript更改为此

<script language="javascript" type="text/javascript">  
    function rdBtn_onClick() {

    document.getElementById("<%= btn_delete_list.ClientID %>").disabled = false;
    document.getElementById("<%= btn_showRes.ClientID %>").disabled = false;

    }
</script>

我猜这个问题与INamingContainer更改发送给客户端的呈现HTML中的控件ID有关。

标记中的按钮在哪里?查看源时HTML看起来像什么?