ФорумПрограммированиеJavaScript → диалоговое окно при нажатии на кнопку

диалоговое окно при нажатии на кнопку

  • sbury

    Сообщения: 9 Репутация: N Группа: Кто попало

    Spritz 1 февраля 2011 г. 17:19

    Добрый день
    помогите с такой проблемой. Есть:
    <script>
    function f(z)
    {
      ????
    }
    </script>
    <input type='button' id='id_1' value='Go' onclick='f(this)'>  
    <input type='button' id='id_2' value='Go' onclick='f(this)'>  
    <input type='button' id='id_3' value='Go' onclick='f(this)'>  


    Надо что-бы при нажатии на кнопку выплывало диалоговое окно (наверно в виде элемента div, хотя может я не прав), в котором в текстовом поле спрашивается название и по нажатию там кнопки 'Далее' (в этом div) эту строку как-то получить.
    То есть, в этом сплывающем окне есть два элемента input type=text и input type=button
    Помогите пожалуйста с решением данной задачи.
    Спасибо
  • TRIAL

    Сообщения: 988 Репутация: N Группа: Джедаи

    Spritz 1 февраля 2011 г. 17:27, спустя 8 минут 24 секунды

    Уже минут 5 читаю и не понимаю что вобще должно в итоге получится. Какое название спрашивается в сплывающем текстовом поле, какую строку надо получить на нажатии далее?
    ИМХО тебе поможет скрытый изначально div и несложные манипуляции с жуквери.
    from TRIAL with LOVE
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало
  • Lirck

    Сообщения: 1658 Репутация: N Группа: Джедаи

    Spritz 1 февраля 2011 г. 18:14, спустя 33 минуты 51 секунду

    var name = prompt("Enter name", "");
  • sbury

    Сообщения: 9 Репутация: N Группа: Кто попало

    Spritz 2 февраля 2011 г. 11:59, спустя 17 часов 45 минут 23 секунды

    Натолкнулся на вроде как простую ерунду но разобраться не могу.
    При нажатии на любую кнопку по идея я должен увидеть состояние div (style.display). Но, alert то сам выскакивает, но ничего не выводит - по идее я должен увидеть 'none'. Подскажите, что не так:
    
    <html>
    <head>
    <title>Task test</title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    <style type="text/css">
    <!–
    #box {
       position: absolute;
       overflow: auto;
       width: 300px;
       height: 200px;
       left: 50%;
       top: 50%;
       margin-left: -150px;
       margin-top: -100px;
       background: #C0DCC0;
       display: none;
       padding:5px;
    }
    –>
    </style>
    <script language="JavaScript" type="text/javascript">
    <!–
    function f(value)
    {
     var s = document.getElementById('box').style.display;
     alert(s);
    }
    </script>
    </head>
    <body>
    <div id='box'></div>
    <input type='button' id='id_1' value='Go' onclick='f(this.id)'>
    <input type='button' id='id_2' value='Go' onclick='f(this.id)'>
    <input type='button' id='id_3' value='Go' onclick='f(this.id)'>
    </body>
    </html>
    
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 2 февраля 2011 г. 12:37, спустя 38 минут 7 секунд

    sbury, не страдай хуйней, тебе фгетз дал нужную ссылку
  • sbury

    Сообщения: 9 Репутация: N Группа: Кто попало

    Spritz 2 февраля 2011 г. 12:55, спустя 17 минут 7 секунд

    да оно мне не подходит. Мне нужно что-то типа формы заказа, у которой несколько полей ввода и кнопка подтверждения. После чего эти данные будут заносится в базу.

    немного разобрался оказывается так нельзя, работает так:
    
    <script language="JavaScript" type="text/javascript">
    function f(value)
    { 
        if(document.getElementById('anket').style.display=="none") {
            document.getElementById('anket').style.display="inline";
        }else{
            document.getElementById('anket').style.display="none";
        }
    }
    </script>
    


    Теперь div появляется, но если список большой он появляется в начале страницы, и если я в конце списка его не видно. Как заставить его выползать на той части страницы где я сейчас нахожусь. Ну или на крайняк подняться к нему?
    и как разместить в нем несколько элементов input и один select?
  • TRIAL

    Сообщения: 988 Репутация: N Группа: Джедаи

    Spritz 2 февраля 2011 г. 13:08, спустя 13 минут 37 секунд

    Ты не знаешь как в див засунуть инпут и селект???
    Чтоб он отображался в нужном месте поиграйся с position. Или чтоб на верх переместится юзай что-то типа <a href=#top>
    from TRIAL with LOVE
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 2 февраля 2011 г. 13:23, спустя 14 минут 56 секунд


    да оно мне не подходит. Мне нужно что-то типа формы заказа, у которой несколько полей ввода и кнопка подтверждения. После чего эти данные будут заносится в базу.
    помоему, это как раз то , что тебе нужно
  • sbury

    Сообщения: 9 Репутация: N Группа: Кто попало

    Spritz 2 февраля 2011 г. 14:38, спустя 1 час 14 минут 42 секунды

    ура! вроде все получилось осталась одна проблема , не могу заставить его отображаться в центре окна, когда страница очень длинная. У меня получается только в центре в верху страницу. Подскажите как в центре в любом месте страницы, но не умею я.. не получается :(
    Может вы как лучше хотите, но мне бы с этим разобраться
    вот то что у меня получилось и работает:

    function ff(z)
    {
        var div = document.createElement("div");
        var bod=document.getElementsByTagName('body')[0];
        bod.appendChild(div);
        div.id='zakaz';
    
       div.style.position= 'absolute';
       div.style.overflow= 'none';
       div.style.width= '400px';
       div.style.height= '300px';
       div.style.left= '50%';
       div.style.top= '50%';
       div.style.border= '1px solid gray';
       div.style.background= 'white';
       div.style.display= 'block';
    
        var req=new JsHttpRequest();
        req.onreadystatechange=function(){
        if(req.readyState==4)
            document.getElementById("zakaz").innerHTML=req.responseText;
        }
        req.open(null,"/parts/select2.php",true);
        req.send({id:z});
    }


    вот однотипные кнопочки, по которым вызывается js:

    td(no(), input(type("submit").id($f["id"]).value("Заказать").onclick("ff(this.id);")


  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz 2 февраля 2011 г. 15:06, спустя 27 минут 45 секунд

    div.style.position= 'absolute';

    попробуй fixed
  • sbury

    Сообщения: 9 Репутация: N Группа: Кто попало

    Spritz 2 февраля 2011 г. 15:13, спустя 7 минут 36 секунд

    спасибо тебе добрый человек! все получилось!

Пожалуйста, авторизуйтесь, чтобы написать комментарий!