[JavaScript, AJAX] Задай вопрос, получи ответ

Discussion in 'PHP' started by banned, 9 Jun 2007.

Thread Status:
Not open for further replies.
  1. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    Получать, всмысле заносить в переменную или что? =\
     
    1 person likes this.
  2. Macro

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

    Joined:
    11 Nov 2006
    Messages:
    552
    Likes Received:
    298
    Reputations:
    207
    Да, да именно так. Заносить в переменную для дальнейших операций
     
  3. VDShark

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

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    Code:
    <script>
    if(typeof(XMLHttpRequest)!='undefined'){
      var getXMLHttpObj = function(){ return new XMLHttpRequest(); }
    } else {
      var getXMLHttpObj = function(){
        var activeXObjects = ['Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0',
        'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP'];
        for(var i=0; i<activeXObjects.length; i++){
          try{
            return new ActiveXObject(activeXObjects[i]);
          }catch(err){}
        }
      }
    }
    
    var Ajax = getXMLHttpObj();
    Ajax.open('GET', 'http://ya.ru', true);
    Ajax.onreadystatechange = processingFunction;
    Ajax.send();
    
    function processingFunction(){
      if(Ajax.readyState!=4) return;
      alert(Ajax.responseText);
    }
    </script>
    
     
  4. astrologer

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

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    В любом нормальном браузере кросс-доменные ограничения не дадут этого сделать, если намеренно их не отключить.
     
    1 person likes this.
  5. Macro

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

    Joined:
    11 Nov 2006
    Messages:
    552
    Likes Received:
    298
    Reputations:
    207
    Я и сам так написал :) Ты бы проверил хоть. У браузера есть система безопасности, которая не позволяет использовать чужие хосты. Так что ты бы сначала проверил, а не вякал. Думаю, решения в данном случае нет
     
  6. VDShark

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

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    Все работает - м.б. данный код не под всеми браузерами отработает - но принцип такой.
     
  7. Macro

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

    Joined:
    11 Nov 2006
    Messages:
    552
    Likes Received:
    298
    Reputations:
    207
    Принцип я знаю и данный код уже пробовал и не раз. Он не работает ни на опере, ни на ie. Мне нужно либо для оперы, либо для ie. AJAX тут не поможет ИМХО, может actionscript?
     
  8. VDShark

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

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    М... ну если действительно брать огранчения в рассмотрение - почему бы не написать на этом хосте php-скрипт, который будет считывать удаленную страницу и отдавать ее пользователю? А обращаться так же через ajax, но к данному хосту, тут то нет ограничений... или хост не твой?:)
     
  9. Macro

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

    Joined:
    11 Nov 2006
    Messages:
    552
    Likes Received:
    298
    Reputations:
    207
    Скажем так... На этом хосте нет php и вообще нет серверных скриптов. =) Не знаешь - молчи.
     
  10. VDShark

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

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    Просто ситуацию яснее описывать нужно, а не так - поиграйте в угадайку, а потом еще и говорить что все не так и все не то :)
     
  11. Macro

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

    Joined:
    11 Nov 2006
    Messages:
    552
    Likes Received:
    298
    Reputations:
    207
    Я точно написал, что мне нужно, все заданные вопросы сводятся к тому, почему мне именно это нужно, а не к уточнению деталей.
     
  12. VDShark

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

    Joined:
    1 Feb 2007
    Messages:
    260
    Likes Received:
    158
    Reputations:
    62
    1 person likes this.
  13. astrologer

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

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    В виджетах Оперы кросс-доменные ограничения XMLHttpRequest отключены.
     
  14. Macro

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

    Joined:
    11 Nov 2006
    Messages:
    552
    Likes Received:
    298
    Reputations:
    207
    Это хорошо, но ведь виджет еще устанавливать надо :( Ээх.. Видимо, не судьба мне воплотить свою идею.
     
    1 person likes this.
  15. bomber

    bomber New Member

    Joined:
    17 Mar 2008
    Messages:
    25
    Likes Received:
    1
    Reputations:
    0
    о, спасибо!

    а как сделать тоже самое с radio?

     
  16. astrologer

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

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title></title>  
    
    <style type="text/css">
    
    #container { margin: 10px 0; }
    #container div
    {
      background: #EEE;
      width:  100px;
      height: 75px;
      border: #AAA solid 1px;
      padding: 0 3px;
      font-size: small;
    }
    div.show { display: block; }
    div.hide { display: none;  }
    
    </style>
    
    <script type="text/javascript">
    
    function toggle(id, a)
    {
      var node = document.getElementById(id),
      i = a.length;
      while(i--)
      {
        if(a[i].checked)
        {
          var blocks = node.getElementsByTagName('div'),
          l = blocks.length;
          while(l--)
          {
            blocks[l].className = 'hide';
          }
          blocks[i].className = 'show';
          break;
        }
      }
    };
    </script>
    
    </head>
    <body>
    
    <div id="container">
     <div class="show">1</div>
     <div class="hide">2</div>
     <div class="hide">3</div>
     <div class="hide">4</div>
     <div class="hide">5</div>
     <div class="hide">6</div>
     <div class="hide">7</div>
     <div class="hide">8</div>
     <div class="hide">9</div>
     <div class="hide">10</div>
    </div>
    
    <form onclick="toggle('container', this.filetype)" action="javascript:alert('submitted')">
      <input name="filetype" type="radio"> 1<br>
      <input name="filetype" type="radio"> 2<br>
      <input name="filetype" type="radio"> 3<br>
      <input name="filetype" type="radio"> 4<br>
      <input name="filetype" type="radio"> 5<br>
      <input name="filetype" type="radio"> 6<br>
      <input name="filetype" type="radio"> 7<br>
      <input name="filetype" type="radio"> 8<br>
      <input name="filetype" type="radio"> 9<br>
      <input name="filetype" type="radio"> 10<br>
    </form>
    
    </body>
    </html>
     
  17. bomber

    bomber New Member

    Joined:
    17 Mar 2008
    Messages:
    25
    Likes Received:
    1
    Reputations:
    0
    astrologer, респект!! :D
     
  18. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    есть div с overflow: scroll , полный текста.
    Нужно яваскриптом прокручивать его вниз. как это сделать? (делаю подобие чата)

    UPD: разобрался, есть замечательная функция
    function toBottom(id){
    document.getElementById(id).scrollTop=document.getElementById(id).scrollHeight
    }

    теперь надо узнать как по нажатию enter в textarea - вызывать функцию яваскрипт )
     
    #538 Дикс, 7 May 2008
    Last edited: 7 May 2008
  19. astrologer

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

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    [ object HTMLDivElement ].scrollTop++
     
  20. bomber

    bomber New Member

    Joined:
    17 Mar 2008
    Messages:
    25
    Likes Received:
    1
    Reputations:
    0
    еще вопрос, как можно сделать "живой" поиск? такая тема есть на многих форумах, тоисть, вводишь данные в поле, и через паузу идет запрос в БД на соответсвие с уже введенными данными в поле, результат выводится без перезагрузки

    мож где есть уже готовое решение? оч нада
     
Thread Status:
Not open for further replies.