天天看點

請教關于ASP.Net2.0和JavaScript的一個問題

這幾天都在用Atlas做一個網站的Demo,遇到了一個自己不懂的問題。

請先看下面的用Atlas調用本地Web Services實作檢查輸入使用者名是否在資料庫中存在的代碼:——暫且命名為“代碼一”

 1

請教關于ASP.Net2.0和JavaScript的一個問題

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

 2

請教關于ASP.Net2.0和JavaScript的一個問題

    function TestonClick()

 3

請教關于ASP.Net2.0和JavaScript的一個問題

    {

 4

請教關于ASP.Net2.0和JavaScript的一個問題

        var username = $("ctl00_CPHolder1_CreateUserWizard1_CreateUserStepContainer_UserName").value;

 5

請教關于ASP.Net2.0和JavaScript的一個問題

        AtlasService.TestUser(username,onTestUserComplete);

 6

請教關于ASP.Net2.0和JavaScript的一個問題

    }

 7

請教關于ASP.Net2.0和JavaScript的一個問題

    function onTestUserComplete(result)

 8

請教關于ASP.Net2.0和JavaScript的一個問題

 9

請教關于ASP.Net2.0和JavaScript的一個問題

        if (result)

10

請教關于ASP.Net2.0和JavaScript的一個問題

            $("user_sidebarTR").innerHTML = "恭喜您,您可以使用此使用者名,請繼續……";

11

請教關于ASP.Net2.0和JavaScript的一個問題

        else

12

請教關于ASP.Net2.0和JavaScript的一個問題

            $("user_sidebarTR").innerHTML = "對不起,使用者名已存在,請您更換……";

13

請教關于ASP.Net2.0和JavaScript的一個問題

14

請教關于ASP.Net2.0和JavaScript的一個問題

</script>

再結合下面的代碼(ASP.Net2.0工具箱登入頁籤中“CreateUserWizard”伺服器控件中的一部分Html代碼):——暫且命名為“代碼二”

請教關于ASP.Net2.0和JavaScript的一個問題

……

請教關于ASP.Net2.0和JavaScript的一個問題

<tr>

請教關于ASP.Net2.0和JavaScript的一個問題

                                <td align="right">

請教關于ASP.Net2.0和JavaScript的一個問題

                                    <asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">使用者名:</asp:Label></td>

請教關于ASP.Net2.0和JavaScript的一個問題

                                <td>

請教關于ASP.Net2.0和JavaScript的一個問題

                                    <asp:TextBox ID="UserName" runat="server"></asp:TextBox>

請教關于ASP.Net2.0和JavaScript的一個問題

                                    <asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName"

請教關于ASP.Net2.0和JavaScript的一個問題

                                        ErrorMessage="必須填寫“使用者名”。" ToolTip="必須填寫“使用者名”。" ValidationGroup="CreateUserWizard1">*</asp:RequiredFieldValidator>

請教關于ASP.Net2.0和JavaScript的一個問題

                                    <input id="Test" type="button" value="檢驗" onclick="return TestonClick()" />

請教關于ASP.Net2.0和JavaScript的一個問題

                                </td>

請教關于ASP.Net2.0和JavaScript的一個問題

                            </tr>

請教關于ASP.Net2.0和JavaScript的一個問題

(備注:現在的代碼沒有問題可以運作的很正常)

請看在“代碼一”中的第4行

var username = $("ctl00_CPHolder1_CreateUserWizard1_CreateUserStepContainer_UserName").value;

。這段代碼是想查找到在“代碼二”中第6行的

<asp:TextBox ID="UserName" runat="server"></asp:TextBox>

TextBox伺服器控件的值。如果我把“代碼一”中的第4行改為

var username = $("UserName").value;

是錯誤的。因為程式運作後“代碼二”中TextBox伺服器控件的ID并不是編寫時給的“ID="UserName"”而是“ID="ctl00_CPHolder1_CreateUserWizard1_CreateUserStepContainer_UserName"”,是以我想請問:如果我不直接像現在在“代碼一”中第4行那樣寫出具體的伺服器控件ID,我該如何取出伺服器控件的ID呢?

本文轉自剛剛部落格園部落格,原文連結:http://www.cnblogs.com/lijigang/archive/2006/10/21/535687.html,如需轉載請自行聯系原作者