读书人

js怎么控制DataGrid里元素的可见性

发布时间: 2012-08-08 14:32:45 作者: rapoo

js如何控制DataGrid里元素的可见性

HTML code
 <asp:DataGrid ID="DataGrid_Profession" runat="server">            <ItemStyle HorizontalAlign="Center"></ItemStyle>            <HeaderStyle Font-Bold="True" HorizontalAlign="Center" BackColor="#E4ECF8"></HeaderStyle>            <Columns>                <asp:TemplateColumn HeaderText="专业名称">                    <ItemTemplate>                        <span id="span_ProfessionName" runat="server">                            <%#Eval("profession_Name") %></span>                        <input type="text" value='<%#Eval("profession_Name") % visible="false" runat="server" id="tb_Profession_Name" />                    </ItemTemplate>                </asp:TemplateColumn>                <asp:TemplateColumn HeaderText="操作">                    <ItemTemplate>                        <input type="button" value="修改" id="btn_Update"/>                    </ItemTemplate>                </asp:TemplateColumn>            </Columns>            <PagerStyle Mode="NumericPages"></PagerStyle>        </asp:DataGrid>

点击修改按钮,使tb_Profession_Name显示,求大神帮忙,小弟不胜感激!

[解决办法]
只有给你的tb_Profession_Name定义一个class,如<input type="text" value='<%#Eval("profession_Name") % visible="false" runat="server" id="tb_Profession_Name" CssClass="test" />
修改按钮:
<input type="button" value="修改" id="btn_Update" onclick="testShow($(this))"/>


用JQUERY写:
<script type="text/javascript">
function testShow(obj){
obj.parent().prev().children(".test").show();
}
</script>

[解决办法]
不定义class也行,JQUERY里直接写:<script type="text/javascript">
function testShow(obj){
obj.parent().prev().children("input").show();
}
</script>

[解决办法]
最好用jquery,用JS有的浏览器获取到的是不同的ID。
[解决办法]
楼上用的就是jq
JScript code
        $(function () {            $("input:button[id$='btn_Update']").click(function () {                $(this).parent().prev().children("input:text[id$='tb_Profession_Name']").show();            })        }) 

读书人网 >asp.net

热点推荐