JQuery не достигает класса CSS - PullRequest
0 голосов
/ 23 декабря 2011

с помощью этого jquery я пытаюсь удалить класс css, но он этого не делает.

   $(".validate_txt_sContactPhone.error").next().removeClass("atleastTwoChars");

  <nobr><input name="ctl00$objContentPageTag$spzContactInformation$txt_sContactPhone$txt" type="text" size="25" id="ctl00_objContentPageTag_spzContactInformation_txt_sContactPhone_txt" class="xqh_TextBox_Edit validate_txt_sContactPhone error">
  <div class="atleastTwoChars"></div>
   <label for="ctl00_objContentPageTag_spzContactInformation_txt_sContactPhone_txt" generated="true" class="error">2*</label></nobr>

Ответы [ 3 ]

2 голосов
/ 23 декабря 2011

Работает нормально здесь: http://jsfiddle.net/sVESR/

Я полагаю, что селектор $(".validate_txt_sContactPhone.error") захватывает неправильный элемент откуда-то еще на странице.

2 голосов
/ 23 декабря 2011

я бы не использовал next(), потому что браузер может вставить какой-то узел перед следующим, так что вы не хотите на это рассчитывать используйте nextUntil('.atleastTwoChars').

0 голосов
/ 23 декабря 2011

Если вы поместите скрипт в теги <head>, он запустится до загрузки DOM (объектная модель документа), поэтому ваш скрипт не будет иметь никакого эффекта.Во избежание этого вы должны использовать метод ready.

<head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
            <script type="text/javascript">
                $(document).ready(function(){
                $(".validate_txt_sContactPhone.error").next().removeClass("atleastTwoChars");
                });
            </script>
</head>

Но если ваш сценарий находится в пределах body, метод ready не требуется, но вы не должны забывать устанавливать егоперед закрывающим тегом </body> и после ваших тегов HTML.

<body>
<input class="validate_txt_sContactPhone error">
<div class="atleastTwoChars"></div>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(".validate_txt_sContactPhone.error").next().removeClass("atleastTwoChars");
</script>

</body>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...