JavaScript 取得 .NET 控制項的方法整理

JavaScript 取得 .NET 控制項的方法整理

JavaScript要取得頁面控制項的方法還蠻多的

大概整理出幾種

1.最原始的方法getElementById:

document.getElementById("Label1").innerText;

這種方法很簡單直覺,不過如果Lable是在某個元件裡面名稱就會變得很長

EX:ctl00_ctl00_MainContentPlaceHolder_MainContentPlaceHolder_Lable1

 

2.使用<%=Label1.ClientID %>取代ID

document.getElementById('<%=Label1.ClientID %>').innerText;

改善了第一種方法的缺點,不過在一些情況下會無法使用

 

3.使用jQuery取得Id

$("#Label1").text();

4.jQuery取得所有Id為Label1結尾的物件

$("[id*=Label1]").text();

這種方法會找到全部叫做的Label1物件

EX: NameLabel1,PhoneLabel1……

 


<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
    <script>
        $(document).ready(function () {
            $("#btnShowText1").click(function () {
                var value = document.getElementById("Label1").innerText;
                alert(value);
                value = document.getElementById('<%=Label1.ClientID %>').innerText;
                alert(value);
            });

            $("#btnShowText2").click(function () {
                var value = $("#Label1").text();
                alert(value);
            });

            $("#btnShowText3").click(function () {
                var value = $('#<%=Label1.ClientID %>').text();
                alert(value);
            });


            $("#btnShowText4").click(function () {
                var value = $("[id*=Label1]").text();
                alert(value);
            });


        });
    </script>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:Label ID="Label1" runat="server" Text="測試1"></asp:Label><br />
            <input id="btnShowText1" type="button" value="使用js getElementById" />
            <input id="btnShowText2" type="button" value="使用jQuery ById" />
            <input id="btnShowText3" type="button" value="找到Label1.ClientID" />
            <input id="btnShowText4" type="button" value="使用jQuery 找出所有Id最後=Label1" />
        </div>
    </form>
</body>
</html>
Technorati 的標籤: ,