Jquery не находит элемент в таблице - PullRequest
0 голосов
/ 16 декабря 2009

Jquery не может найти какой-либо элемент в моей таблице - вот код html. если я не укажу имя элемента #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>

Любая помощь будет высоко оценена.

Спасибо

Ответы [ 4 ]

3 голосов
/ 16 декабря 2009
<script>
$(function() {
    $("#btnLogin").click
    (   function()
        {
            alert('Hi');
        }
    );
});
</script>

Попробуйте сделать это в DOM ready, а не до того, как элемент будет сгенерирован / обработан / обработан.

2 голосов
/ 16 декабря 2009

Вы запускаете скрипт до загрузки страницы, поэтому элемент, который вы ищете, еще не существует.

Попробуйте запустить скрипт, когда документ будет готов.

$(document).ready(function() {
    $("#btnLogin").click
    (   function()
        {
            alert('Hi');
        }
    );
});
0 голосов
/ 16 декабря 2009

Когда ваша функция пытается присоединить обработчик щелчка, элемент может не существовать. Попробуйте

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

$ (function () {...}); part заставляет jQuery подождать, пока страница не будет готова и все элементы существуют, прежде чем найти элемент с идентификатором btnLogin и подключить обработчик нажатия.

0 голосов
/ 16 декабря 2009

Если вы ищете #btnLogin, jquery не сможет его найти, потому что идентификатор входа вашей кнопки ввода - «Логин».

Так и должно быть:

$("#Login").click(function() {
   alert("Hi");
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...