Помогите со скриптом, плс

Discussion in 'PHP' started by ~EviL~, 13 Nov 2007.

  1. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    Короче говоря, имеется форма:

    HTML:
    <form name='frm1' method='post'>
    a)&nbsp;<input type='radio' value='0' name='quest1' checked>0<br>
    b)&nbsp;<input type='radio' value='2' name='quest1'>2<br>
    c)&nbsp;<input type='radio' value='4' name='quest1'>4<br>
    d)&nbsp;<input type='radio' value='6' name='quest1'>6<br>
    <input type='submit' value='submit' name='submit'><br>
    </form>
    Надо получить значение ответа через JavaScript. Я пробовал так:
    ... onsubmit='alert(document.frm1.quest1.value)'
    а в ответ одно и то же: undefined
    Помогите плс.
     
  2. inv

    inv Banned

    Joined:
    3 Aug 2007
    Messages:
    261
    Likes Received:
    143
    Reputations:
    -58
    http://www.codenet.ru/webmast/js/ajax/AJAX-Application.php
    http://xmlhack.ru/texts/06/ajax-html-canvas-ruby/ajax-html-canvas-ruby.html
     
  3. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    Прочитал бегло, так как мне AJAX не подходит. Сервер не участвует в анализе frm1, а только JavaScript =\ Такова задумка. Если б имелось
    <input type="button" value="qwerty" name="one"> //примерно,
    то тогда б все решалось просто (document.frm1.one.value), а тут - облом. Можно как-то по другому?
     
  4. [Raz0r]

    [Raz0r] Elder - Старейшина

    Joined:
    25 Feb 2007
    Messages:
    425
    Likes Received:
    484
    Reputations:
    295
    for(var i = 0; i < quest1.length; i++) if (document.frm1.quest1.checked==true) alert(document.frm1.quest1.value);
     
    1 person likes this.
  5. inv

    inv Banned

    Joined:
    3 Aug 2007
    Messages:
    261
    Likes Received:
    143
    Reputations:
    -58
    сорри я подумал ответ СЕРВЕРА)
     
    1 person likes this.
  6. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    no problemo inv =), но твойт вариант, [Raz0r], я не понял, воплотил, и не получилось =\
    Можеш объяснить как должен сработать твой скрипт?
     
    #6 ~EviL~, 13 Nov 2007
    Last edited: 13 Nov 2007
  7. bul.666

    bul.666 булка

    Joined:
    6 Jun 2006
    Messages:
    719
    Likes Received:
    425
    Reputations:
    140
    JavaScript не даст ответа, т.к. тут не одно значение quest, а целых четыре... =\
    Razor правильно написал!
    Воть :
    HTML:
    <form name='frm1' method='post'>
    a)&nbsp;<input type='radio' value='0' name='quest1' checked>0<br>
    b)&nbsp;<input type='radio' value='2' name='quest1'>2<br>
    c)&nbsp;<input type='radio' value='4' name='quest1'>4<br>
    d)&nbsp;<input type='radio' value='6' name='quest1'>6<br>
    <input type='button' value='submit' name='submit' OnClick="for(var i = 0; i < quest1.length; i++) if (document.frm1.quest1[i].checked==true) alert(document.frm1.quest1[i].value);">
    <br>
    </form>
     
    #7 bul.666, 14 Nov 2007
    Last edited: 14 Nov 2007
    1 person likes this.
  8. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    Спасибо БОЛЬШОЕ =))) Извините за преждевременное осуждение, узнал что-то полезное для себя =)
     
  9. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    Новый день, новые проблемы :D
    На этот раз она вот какая: есть в хтмл документе тэг <span id='main'>...</span>
    Далее:
    <button onClick=javascript:document.getElementById('main').innerHTML=abc>ОК</button>
    <script>
    bla=0
    abc="<script>if (a==...) {bla++}</script>"+
    "alert(bla)"
    </script>

    Вот. Одна проблема состоит в том, что, например,
    alert(bla) не происходит. Другая - после нажатия на кнопку ОК ни один скрипт на странице не работает. И напоследок, как вывести на экран переменную а?
    Я пробывал так:
    alert(document.getElementById('main').a)
    alert(document.getElementById('main').innerHTML.a)
    alert(document.getElementById('main').a.value)
    Но не получается никак. Подскажите плс, что я делаю не так.
     
  10. je0n

    je0n Elder - Старейшина

    Joined:
    14 May 2006
    Messages:
    345
    Likes Received:
    96
    Reputations:
    41
    а чесно говоря не понял, что ты хочешь замутить, но попробуй вот так:
    PHP:
    <span id='main'>yooo</span>
    <
    button onClick=your_function()>ОК</button>
    <
    script>
    function 
    your_function()
    {
        
    bla='test';
        
    document.getElementById('main').innerHTML=bla;
        
    alert(bla);

        
    a='Выводим переменную a';
        
    alert(a);   //типа так чтоле вывести??
    }
    </script>
     
    #10 je0n, 15 Nov 2007
    Last edited: 15 Nov 2007
  11. inv

    inv Banned

    Joined:
    3 Aug 2007
    Messages:
    261
    Likes Received:
    143
    Reputations:
    -58
    bla -такой нет переменно поэтому ошибка
    остальные скрипты не исполняются скорее всего потому что ошибка с бла
    почитай книжки для новичков и тебе и другbv будет проще
     
  12. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    2 inv
    При чем тут книжки для новичков? Идея моя такова:
    Есть участок (<span></span>), который содержит формы и скрипты. Затем надо заменить содержимое того же участка другими формами и скриптами при нажатие на кнопку. Я пытаюсь это сделать с document.getElementById('main').innerHTML=[переменная, в которой прописаны формы и скрипты].
    Переменную я условно назвал, допустим, prm. Есть и другая переменная, которая при определенном условии увеличивается (например: var scr; scr++). Но у меня не получается: скрипты не работают. Мой вопрос: после того как поменялось содержимое <span id='main'></span>, как можно вывести на экран переменную, которую создал новый скрипт в том участке?
     
  13. inv

    inv Banned

    Joined:
    3 Aug 2007
    Messages:
    261
    Likes Received:
    143
    Reputations:
    -58
    >>>При чем тут книжки для новичков?
    при том что не знаешь основ,как можно что-то делать без основ - я не знаю
    допустим целый день сидеть и разбираться в написании твоего скрипта у меня желания нет,а если бы ты знал основы то или написал бы сам или задавал бы действительно сложные вопросы,на которые нужно было бы отвечать словами и не целыми кусками кода.
    если тебя все устраивает =\то просто жди пока напишут код.
     
    1 person likes this.
  14. je0n

    je0n Elder - Старейшина

    Joined:
    14 May 2006
    Messages:
    345
    Likes Received:
    96
    Reputations:
    41
    HTML:
    <span id='main'>yooo</span>
    <button onClick=your_function()>ОК</button>
    <script>
    function your_function()
    {
    	bla='<h1>dudu</h1><script>alert()<//script>';
    	document.getElementById('main').innerHTML=bla;
    	alert(bla);
    }
    </script>
    
    в переменную бла заносим тэг </script> вот так:
    <//script> - ибо символ // в кавычках означает просто / а если мутить как ты, то интерпритатор думает, что ты просто закрыл тэг </script>, и дальше выводит твой скрипт на экран и думает, что это и не скрипт вовсе, а просто текст :)
     
    2 people like this.
  15. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    Я не жду кода, а маленькую подсказку, которая меня наведет. Ты действительно прав, я до сих пор изучаю JavaScript, ибо для того чтобы его хорошо знать требуется не день, не два, а намного больше времени, а у меня его не так уж много, поэтому я обращаюсь за помощью ингода. А описал я все подробно, чтобы меня поняли, какую переменную я не могу выразить. Тем более я никого не заставляю, а просто прошу, если не трудно. Извиняюсь за оффтоп.
     
  16. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    Спасибо je0n, я понял почему у меня не получалось =)
    Очень помог, лови + =)))
     
  17. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    Извиняюсь за чрезмерное любопытство, но возможно ли изменить имя кнопки (<button></button>) и функцию которую она вызывает при ее нажатии? (Естественно с JavaScript =)
     
  18. je0n

    je0n Elder - Старейшина

    Joined:
    14 May 2006
    Messages:
    345
    Likes Received:
    96
    Reputations:
    41
    конечно:
    HTML:
    <span id='main'>yooo</span>
    <button onClick=function_name()>Имя кнопки</button>
    <script>
    function function_name()
    {
    	bla='<h1>dudu</h1><script>alert()<//script>';
    	document.getElementById('main').innerHTML=bla;
    	alert(bla);
    }
    </script>
    
    пробуй сам, ведь быстрее самому попадставлять, чем ждать ответа
     
  19. ~EviL~

    ~EviL~ Elder - Старейшина

    Joined:
    14 Aug 2007
    Messages:
    169
    Likes Received:
    77
    Reputations:
    4
    Я никода не жду =)) Я спрашиваю, а сам непрестанно пробую =) Например, есть кнопка <button onClick="function1();">Button1</button>. А при нажатии на другую кнопку, например, <button>Change</button> менялось название кнопки Button1 на Button2, а функция function1 менялась на function2. Такое возможно?
    P.S. Уже ненадо, сам догадался =))
     
    #19 ~EviL~, 15 Nov 2007
    Last edited: 15 Nov 2007