簡體   English   中英

jQuery在表中找不到元素

[英]Jquery not finding element within a table

jQuery無法在我的表中找到任何元素-這是htmlcode。 如果我未指定元素名稱#btnLogin,則會將click事件附加到所有元素。 當我嘗試查找特定元素時,它只是不拾取。

<script>
    $("#btnLogin").click
    (   function()
        {
            alert('Hi');
        }
    );
</script>
<table width="290px" border="1" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border-style:solid; border: 1px solid; ">
  <tr>    
    <td width="100%" align="left" valign="top" bgcolor="#FFFFFF" style="padding:5px"><table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#FFFFFF">
      <tr>
        <td width="100%" bgcolor="#9B2301"  style="padding:5px"><span class="text2" style="padding:5px">Login...</span></td>
      </tr>
      <tr>
        <td style="padding-top: 8px; padding-left:10px;">
                <input name=txtUserName id="txtUserName" style="border:1px solid #CCCCCC;" type="text"  value="Username">
                <input name=txtPassword id="txtPassword" style="border:1px solid #CCCCCC;" type="text" value="Password">
        </td>
      </tr>
      <tr>
         <td valign="middle" style="padding-top: 5px; padding-left:10px;">
                <input id="Check" Type=Checkbox style=" font-size:8px;" name="Remember">&nbsp<font style="color: #9B2301; font-weight:bold">Remember Me.</font> | <font style="color: #9B2301; font-weight:bold"><a id="btnLogin" style="color: #666666; font-weight: normal;" href="#">Login</a></font> 
        </td>
      </tr>
       <tr>
         <td valign="middle" align=right style="padding-top: 5px; padding-right:15px;">
                <input id="Login" Type="Button" style="font-size:11px; border:1px solid #CCCCCC" name="Login" Value="Login">
        </td>
      </tr>
    </tr>
</table>

任何協助將不勝感激。

謝謝

<script>
$(function() {
    $("#btnLogin").click
    (   function()
        {
            alert('Hi');
        }
    );
});
</script>

嘗試在DOM就緒的情況下進行此操作,而不要在甚至生成/處理/渲染元素之前進行。

您正在加載頁面之前運行腳本,因此要搜索的元素尚不存在。

准備好文檔后,嘗試運行腳本。

$(document).ready(function() {
    $("#btnLogin").click
    (   function()
        {
            alert('Hi');
        }
    );
});

如果您要查找#btnLogin,則jquery將無法找到它,因為輸入按鈕的登錄ID為“ Login”。

所以應該是:

$("#Login").click(function() {
   alert("Hi");
});

當您的函數嘗試附加點擊處理程序時,該元素可能不存在。 嘗試

<script>
    $(function () {
        $("#btnLogin").click(function () {
                alert('Hi');
         });
    });
</script>

$(function(){...}); 部分使jQuery等到頁面准備好並且所有元素都存在之后,再查找ID為btnLogin的元素並附加單擊處理程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM