JavaScript
От: Funny Rabbit Россия  
Дата: 24.10.13 12:27
Оценка:
Почему не работает такой скрипт?

<script>
    function disableMissing(){
        var iv = document.getElementsByTagName('input');
        if (iv)    {
            foreach(i in iv){
                alert(i.innerText);
        }
        else
            alert('No input tags.');
    };

    jQuery(document).ready(function () { disableMissing(); });
</script>
То что меня не убивает, делает меня умнее.
Re: JavaScript
От: Sharov Россия  
Дата: 24.10.13 12:32
Оценка:
Здравствуйте, Funny Rabbit, Вы писали:


А какую ошибку в консоль пишет?
может так:
$(document).ready(function () { disableMissing(); });
Кодом людям нужно помогать!
Re: JavaScript
От: Senyai Россия http://www.arseniy.net
Дата: 24.10.13 12:38
Оценка:
Здравствуйте, Funny Rabbit, Вы писали:

FR>Почему не работает такой скрипт?


FR>
FR><script>
FR>    function disableMissing(){
FR>        var iv = document.getElementsByTagName('input');
FR>        if (iv)    {
FR>            foreach(i in iv){
FR>                alert(i.innerText);
FR>        }
FR>        else
FR>            alert('No input tags.');
FR>    };

FR>    jQuery(document).ready(function () { disableMissing(); });
FR></script>
FR>


Описание ошибки должно быть в консоли. foreach? i in iv? innerText у input? всё не так. С mootools я бы написал это так alert($$("input").get("value").join(", ")).
Не бойтесь совершенства. Вам его не достичь. © Сальвадор Дали
Re: JavaScript
От: Funny Rabbit Россия  
Дата: 24.10.13 12:46
Оценка:
Здравствуйте, Funny Rabbit, Вы писали:

FR>Почему не работает такой скрипт?


FR>
FR><script>
FR>    function disableMissing(){
FR>        var iv = document.getElementsByTagName('input');
FR>        if (iv)    {
FR>            foreach(i in iv){
FR>                alert(i.innerText);
FR>        }
FR>        else
FR>            alert('No input tags.');
FR>    };

FR>    jQuery(document).ready(function () { disableMissing(); });
FR></script>
FR>



В консоли ничего нет.
То что меня не убивает, делает меня умнее.
Re: JavaScript
От: zhech  
Дата: 24.10.13 13:40
Оценка:
Здравствуйте, Funny Rabbit, Вы писали:

FR>Почему не работает такой скрипт?


FR>
FR><script>
FR>    function disableMissing(){
FR>        var iv = document.getElementsByTagName('input');
FR>        if (iv)    {
FR>            foreach(i in iv){
FR>                alert(i.innerText);
FR>        }
FR>        else
FR>            alert('No input tags.');
FR>    };

FR>    jQuery(document).ready(function () { disableMissing(); });
FR></script>
FR>


Может, потому как нужно использовать не foreach а for?
Re: А Вы PHP c JS не спутали?
От: vitsavinov  
Дата: 24.10.13 13:42
Оценка: 6 (1) +1
Здравствуйте, Funny Rabbit, Вы писали:

FR>Почему не работает такой скрипт?


FR> foreach(i in iv){



В JS не foreach, а просто for
Re[2]: А Вы PHP c JS не спутали?
От: Funny Rabbit Россия  
Дата: 01.11.13 04:16
Оценка:
Здравствуйте, vitsavinov, Вы писали:

V>Здравствуйте, Funny Rabbit, Вы писали:


FR>>Почему не работает такой скрипт?


FR>> foreach(i in iv){



V>В JS не foreach, а просто for



ТАкая фигня тоже не работает, Почему? Я Новичек просто.


<script>
    function disableMissing(){
        var iv = document.getElementsByTagName("input");
        if (iv)    {
            for(i = 0; i < iv.length; i++){
                alert(i.innerText);
        }
        else
            alert("No input tags");
        

    };

    $(document).ready(function () { disableMissing(); });
</script>
То что меня не убивает, делает меня умнее.
Re[3]: А Вы PHP c JS не спутали?
От: Funny Rabbit Россия  
Дата: 01.11.13 04:37
Оценка:
Даже это не срабатывает.
<script>
    function disableMissing(){        
        alert('I''m here');
    };

    $(document).ready(function () { disableMissing(); });
</script>
То что меня не убивает, делает меня умнее.
Re[4]: А Вы PHP c JS не спутали?
От: Miroff Россия  
Дата: 01.11.13 06:10
Оценка:
Здравствуйте, Funny Rabbit, Вы писали:

FR>Даже это не срабатывает.

FR>
FR><script>
FR>    function disableMissing(){        
FR>        alert('I''m here');
FR>    };

FR>    $(document).ready(function () { disableMissing(); });
FR></script>
FR>


Стесняюсь спросить, а jQuery вообще загружен?
Re[2]: JavaScript
От: Miroff Россия  
Дата: 01.11.13 06:13
Оценка: 1 (1)
Здравствуйте, Funny Rabbit, Вы писали:

FR>Здравствуйте, Funny Rabbit, Вы писали:


FR>>Почему не работает такой скрипт?


FR>>
FR>><script>
FR>>    function disableMissing(){
FR>>        var iv = document.getElementsByTagName('input');
FR>>        if (iv)    {
FR>>            foreach(i in iv){
FR>>                alert(i.innerText);
FR>>        }
FR>>        else
FR>>            alert('No input tags.');
FR>>    };

FR>>    jQuery(document).ready(function () { disableMissing(); });
FR>></script>
FR>>



FR>В консоли ничего нет.


Используй нормальный браузер, а не IE. У тебя синтаксическая ошибка: скобка лишняя после foreach, да и на сам foreach должен ругнуться.
Re[3]: JavaScript
От: Funny Rabbit Россия  
Дата: 01.11.13 06:16
Оценка:
Здравствуйте, Miroff, Вы писали:



M>Используй нормальный браузер, а не IE. У тебя синтаксическая ошибка: скобка лишняя после foreach, да и на сам foreach должен ругнуться.

Я Хром использую
То что меня не убивает, делает меня умнее.
Re[5]: А Вы PHP c JS не спутали?
От: Funny Rabbit Россия  
Дата: 01.11.13 06:22
Оценка:
Здравствуйте, Miroff, Вы писали:

M>Здравствуйте, Funny Rabbit, Вы писали:


FR>>Даже это не срабатывает.

FR>>
FR>><script>
FR>>    function disableMissing(){        
FR>>        alert('I''m here');
FR>>    };

FR>>    $(document).ready(function () { disableMissing(); });
FR>></script>
FR>>


M>Стесняюсь спросить, а jQuery вообще загружен?


Да. вот так работает

<scipt>
$(document).ready(function () { alert('Done'); });
</script>
То что меня не убивает, делает меня умнее.
Re: JavaScript
От: SxPx  
Дата: 12.11.13 10:48
Оценка: 4 (1)
Здравствуйте, Funny Rabbit, Вы писали:

FR>Почему не работает такой скрипт?


FR>
FR><script>
FR>    function disableMissing(){
FR>        var iv = document.getElementsByTagName('input');
FR>        if (iv)    {
FR>            foreach(i in iv){
FR>                alert(i.innerText);
FR>        }
FR>        else
FR>            alert('No input tags.');
FR>    };

FR>    jQuery(document).ready(function () { disableMissing(); });
FR></script>
FR>


Очевидно, потому, что:
1. В JavaScript нет оператора foreach.
2. Цикл for/in — это цикл по свойствам. И обращаться к свойствам массива нужно правильно.
3. У input нет innerText, а есть value.
4. К document можно обращаться, если существует элемент html и body.


<html><body>
<input value="kkkk">
<input value="jjjj">

<script>
  function disableMissing() {
    var iv = document.getElementsByTagName('input');
    if (iv) {
      for (i in iv) {
        alert(iv[i].value);
      }
    }
    else
      alert('No input tags.');
  };

  disableMissing();
</script>
</body></html>
Re[2]: JavaScript
От: Funny Rabbit Россия  
Дата: 12.11.13 11:57
Оценка:
Здравствуйте, SxPx, Вы писали:

SP>Очевидно, потому, что:


SP>2. Цикл for/in — это цикл по свойствам. И обращаться к свойствам массива нужно правильно.

НЕ понял.
SP>3. У input нет innerText, а есть value.
Понял.
SP>4. К document можно обращаться, если существует элемент html и body.
Скрипт был вырван из текста.

И все же. По поводу яндекс.карт....?????
То что меня не убивает, делает меня умнее.
Re[3]: JavaScript
От: SxPx  
Дата: 12.11.13 12:32
Оценка:
Здравствуйте, Funny Rabbit, Вы писали:

FR>Здравствуйте, SxPx, Вы писали:


SP>>Очевидно, потому, что:


SP>>2. Цикл for/in — это цикл по свойствам. И обращаться к свойствам массива нужно правильно.

FR>НЕ понял.
SP>>3. У input нет innerText, а есть value.
FR>Понял.
SP>>4. К document можно обращаться, если существует элемент html и body.
FR>Скрипт был вырван из текста.

FR>И все же. По поводу яндекс.карт....?????


По поводу 3:
Если вы пишете for (i in iv), где iv массив обектов, то обращатся к значению атрибута value некоторого объекта в массиве iv нужно так iv[i].value, а не так i.value. Потому, цикл for/in — это цикл по свойствам iv, а не по элементам iv.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.