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

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

Thread Status:
Not open for further replies.
  1. #Wolf#

    #Wolf# Elder - Старейшина

    Joined:
    26 Mar 2008
    Messages:
    375
    Likes Received:
    166
    Reputations:
    16
    есть див с id=service
    в котором ссылки вида
    PHP:
    <div id="service" >
    <
    a href='javascript:void(0);' onclick='adm_ban();return false;'>ban</a>
    <
    a href='javascript:void(0);' onclick='unban();return false;'>unban</a><br>
    </
    div>
    как средствами js можно вставлять в этот блок еще ссылки с опред ф-ями?
    ах да. сам скрипт в отдельном файле. а файл с этим дивом подключается через фрейм
     
    #2221 #Wolf#, 25 Mar 2010
    Last edited: 25 Mar 2010
  2. dr.Web

    dr.Web Member

    Joined:
    2 Feb 2009
    Messages:
    7
    Likes Received:
    22
    Reputations:
    10
    PHP:
    <script>
    function 
    add(id){
    id.innerHTML=id.innerHTML "<br><a href='javascript:void(0);' onclick='alert(\"new link\");return false;'>click me</a>";
    }

    </script>

    <div id="service" >  


    <a href='javascript:void(0);' onclick='adm_ban();return false;'>ban</a> <br>
    <a href='javascript:void(0);' onclick='unban();return false;'>unban</a><br>  
    <a href='javascript:void(0);' onclick='add(this);return false;'>add link</a><br>  
    </div> 
    дальше по аналогии
     
    1 person likes this.
  3. Moldman

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

    Joined:
    12 Jun 2007
    Messages:
    91
    Likes Received:
    35
    Reputations:
    -5
    есть поле textarea где находятся слова разделенные запятой.

    как сделать отдельный POST запрос для каждого слова?
     
  4. Flcn

    Flcn Member

    Joined:
    6 Jul 2009
    Messages:
    56
    Likes Received:
    6
    Reputations:
    0
    Code:
    ar = document.getElementById("textfield_id").value.split(",");
    
    for (e in ar){
      //здесь сам запрос куда ты и подставишь ar[e] (слово)
    }
    
    можно ешё после каждой итерации ставить задержку, чтобы хаотично сервак не грузить..
     
  5. Life7

    Life7 Banned

    Joined:
    14 Jun 2009
    Messages:
    150
    Likes Received:
    54
    Reputations:
    0
    подскажите код кликандера открывающего 3 окна с моими ссылками?
     
  6. Vlad&slav

    Vlad&slav Member

    Joined:
    1 Jan 2009
    Messages:
    207
    Likes Received:
    41
    Reputations:
    9
    Как проверить значение к примеру у CheckBox - this.form.checkbox2.checked=="true" а у radiobutton как?
     
  7. Life7

    Life7 Banned

    Joined:
    14 Jun 2009
    Messages:
    150
    Likes Received:
    54
    Reputations:
    0
    Еще 1 вопрос, а как сделать замену определеных символов на нужные в тексте (переменной) ?
    тоесть чтобы была функция как в php - str_replace
     
  8. Life7

    Life7 Banned

    Joined:
    14 Jun 2009
    Messages:
    150
    Likes Received:
    54
    Reputations:
    0
    спасибо. помогит ище с етим

    у меня есть div(id=AAA) в div'е, а он в свою очередь в div'е. Как мне узнать расстояние от левой границы окна до дива AAA????
     
  9. diGriz

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

    Joined:
    11 Oct 2006
    Messages:
    138
    Likes Received:
    82
    Reputations:
    6
    Так:
    Code:
    if (form.radio_button.checked) {
    alert('checked');
    }
    
     
  10. [K4t]

    [K4t] New Member

    Joined:
    15 Feb 2009
    Messages:
    53
    Likes Received:
    4
    Reputations:
    1
    где можно достать такую, готовою уже. или, может, подскажите чего в реализации :) Javascript не очень...

    [​IMG]
     
  11. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    http://tinymce.moxiecode.com/
     
  12. оlbaneс

    оlbaneс Moderator

    Joined:
    5 Nov 2007
    Messages:
    1,376
    Likes Received:
    1,094
    Reputations:
    356
    вот функция генератора пароля
    Code:
    <script type="text/javascript">
     function getrandom()  {
    var A = new Array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","Y","Z") ;
    var b = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","y","z") ;
    var dig = new Array("0","1","2","3","4","5","6","7","8","9") ;
    var m = new Array();  //итоговоый массив из которого будут браться символы
    var count = eval(document.forms[0].elements['count'].value);
    var pass="" ;
    var r,i=0;
      if (count=="") {alert('Введите длину пароля!') ; exit();}  //если поле пустое алерт
        else if (count>30) {alert('Введите число меньше 31') ; exit();}
             else       //длину пароля проверили идем дальше
     if( document.getElementById("1").checked){m = m.concat(A);}  //проверяем какие чекбоксы отметили
     if (document.getElementById("2").checked){ m = m.concat(b);}
     if (document.getElementById("3").checked){ m = m.concat(dig);}
     if (m==0) {alert('отметьте какие символы использовать') ; exit();} //если чекбоксы не отмечены алерт и ехит
     else {
         while (i<count)
            {    pass += m[Math.floor(Math.random() * m.length)]  ; //рандомим пароль
                 i++;
            }
          }
     document.getElementById('qqq').innerHTML =pass; //выводим пароль в нужное поле
                         }  //end fuction
      </script>
    если отметить все поля как надо то функция работает. проблемы с алертами и ехитами.
    например если при ВСЕХ пустых полях нажать кнопку генерировать то аллерт
    if (count=="") {alert('Введите длину пароля!') ; exit();} не выскакивает (а пока функцию до конца не дописал выскакивал :()
    а сейчас сразу выскакивает вот этот алерт
    if (m==0) {alert('отметьте какие символы использовать') ; exit();} и нажимаю кнопку ок выводит сообшение ошибка сценария предполагается наличия объекта (указывает на ; (вот это место) exit()) и точно такая же ошибка сценария если указал большую длину пароля(только указвает на строчку к совему алерту).

    что я не так делаю с алертами? почему первый пропускает, а на следующие выдает ошибку сценария? :(

    вот на всякий случай целиком страничка
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <meta http-equiv="content-type" content="text/html; charset=windows-1251">
        <meta name="generator" content="PSPad editor, www.pspad.com">
        <title> 
        </title>
        <style type="text/css">    body{     background-color: grey;     font-family: Arial,Helvetica,sans-serif     color: white;     }     TABLE { color: white;}     td  { border:white solid 1px cellspacing="0" }     h1 {color:goldenrod    }
        </style>
    <script type="text/javascript">
     function getrandom()  {
    var A = new Array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","Y","Z") ;
    var b = new Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","y","z") ;
    var dig = new Array("0","1","2","3","4","5","6","7","8","9") ;
    var m = new Array();
    var count = eval(document.forms[0].elements['count'].value);
    var pass="" ;
    var r,i=0;
      if (count=="") {alert('Введите длину пароля!') ; exit();}  //если поле пустое алерт
        else if (count>30) {alert('Введите число меньше 31') ; exit();}
             else       //длину пароля проверили идем дальше
     if( document.getElementById("1").checked){m = m.concat(A);}  //проверяем какие чекбоксы отметили
     if (document.getElementById("2").checked){ m = m.concat(b);}
     if (document.getElementById("3").checked){ m = m.concat(dig);}
     if (m==0) {alert('отметьте какие символы использовать') ; exit();} //если чекбоксы не отмечены алерт и ехит
     else {
         while (i<count)
            {    pass += m[Math.floor(Math.random() * m.length)]  ; //рандомим пароль
                 i++;
            }
          }
     document.getElementById('qqq').innerHTML =pass; //выводим пароль в нужное поле
                         }  //end fuction
      </script>
      </head>
      <body>
        <tr>
          <td colspan="2" >
            <h1 align="center" ><b>Генератор пароля </b>  </h1>     </td>
        </tr>
        <form>
          <table width="300"   align="center"  border="1"  bgcolor="DarkRed" cellpadding="10" cellspacing="0"   >
            <tbody>
              <tr>
                <td width='75%' align="right">Количество символов:</td>
                <td  >
                  <input name="count" size="5" type="text" maxlength="2" >  </td>
              </tr>
              <tr>
                <td align="right">  A-Z</td>                  <td>
                  <input name="hi" type="checkbox" id="1">
                  <br> </td>
              </tr>
              <tr>
                <td align="right"> a-z</td>                        <td>
                  <input name="slow" type="checkbox" id="2">
                  <br>   </td>
              </tr>
              <tr>
                <td align="right">  0-9</td>                               <td>
                  <input name="num" type="checkbox" id="3">
                  <br> </td>
              </tr>
              <tr>
                <td colspan="2" align="right">
                  <input   value="Сброс" type="reset">
                  <input value="Генерировать" type="button" name="generate"  onClick="getrandom();">                       </td>
              </tr>
            </tbody>
          </table>
          <br>
          <br>
          <table width="300"   align="center"  border="1"  bgcolor="DarkRed" cellpadding="10" cellspacing="0"   >
            <tbody>
              <tr>
                <td height="80px" solid=5px  colspan="2" align="center" >
                  <p id="qqq">Результат
                  </p></td>
              </tr>
            </tbody>
          </table>
        </form>
      </body>
    </html>
     
    _________________________
    #2232 оlbaneс, 31 Mar 2010
    Last edited: 31 Mar 2010
  13. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    eval лишним был. Я добавил проверку на правильность введенного числа регуляркой.
    Code:
    function getrandom()
    {
    var A = new Array ("A","B","C","D","E", "F","G","H","I","J","K","L", "M","N","O","P","Q","R","S", "T","U","V","W","Y","Z");
    var b = new Array ("a","b","c","d","e", "f","g","h","i","j","k","l", "m","n","o","p","q","r","s", "t","u","v","w","y","z");
    var dig = new Array ("0","1","2","3","4", "5","6","7","8","9");
    var m = new Array();
    var count = document.forms[0].elements['count'].value;
    var pass="" ;
    var r,i=0;
    var reg=/^\d+$/;
    
    if (!reg.test(count))
    {
      alert('Введите длину пароля!');
      return;
    }  //если поле пустое алерт
    
    if (count>30)
    {
      alert('Введите число меньше 31');
      return;
    }
    
    if( document.getElementById("1").checked){m = m.concat(A);}  //проверяем какие чекбоксы отметили
    if (document.getElementById("2").checked){ m = m.concat(b);}
    if (document.getElementById("3").checked){ m = m.concat(dig);}
    
    if (m.length==0)
    {
      alert('отметьте какие символы использовать');
      return;
    } //если чекбоксы не отмечены алерт и ехит
    
    
    while (i<count)
    {
      pass += m[Math.floor(Math.random() * m.length)]  ; //рандомим пароль
      i++;
    }
    
    document.getElementById('qqq').innerHTML =pass; //выводим пароль в нужное поле
    }  //end fuction
    
     
  14. LStr1ke

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

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    if (count==null) {alert('Введите длину пароля!') ; exit();} //если поле пустое алерт
     
    1 person likes this.
  15. оlbaneс

    оlbaneс Moderator

    Joined:
    5 Nov 2007
    Messages:
    1,376
    Likes Received:
    1,094
    Reputations:
    356
    я евал вставил чтобы она только цифры вопринимала.
    что за регулярка ? прокомменть эти строчки что бы знал что в гугле учить
    var reg=/^\d+$/;

    if (!reg.test(count))

    2 LStr1ke а, ну да. раньше и без null работало, однако попрежнему пищет ошибка сценария - предпологается наличие объекта ; (вот сюда ссылается)exit()

    у дх код работает и понятен. надо только с регуляркой разобраться
     
    _________________________
    #2235 оlbaneс, 31 Mar 2010
    Last edited: 31 Mar 2010
  16. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    eval вообще-то выполняет введенный в поле javascript-код в твоем случае :)
    А это обычное регулярное выражение (PCRE), проверяет, чтобы в поле были введены только десятичные цифры. Кстати, проверку >0 я забыл сделать. Гугли RegExp в JavaScript.
     
    #2236 d_x, 31 Mar 2010
    Last edited: 31 Mar 2010
    2 people like this.
  17. оlbaneс

    оlbaneс Moderator

    Joined:
    5 Nov 2007
    Messages:
    1,376
    Likes Received:
    1,094
    Reputations:
    356
    хм, гугл подсказвает что ты прав насчет эвал. в моей книжке написано что эвал типа проверка на введеные данные чтобы цифры были. хреновая видать книжка
    спасибо. всем ++

    во. нашел - крутая статья http://javascript.ru/RegExp
     
    _________________________
    #2237 оlbaneс, 31 Mar 2010
    Last edited: 31 Mar 2010
  18. Rebit

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

    Joined:
    7 Aug 2007
    Messages:
    85
    Likes Received:
    214
    Reputations:
    2
    Срочно нужно Задано одновимірний масив цілих чисел, визначити значення найменшого елементу і вивести його на екран.
     
  19. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Code:
    <script>
    function maxelem (v) { 
      var m= v[0]
      for (var i=1; i <= v.length-1; i++) { 
          if (v[i] > m )
              m= v[i]
      }
      return m
    }
    function minelem (v) { 
      var m= v[0]
      for (var i=1; i <= v.length-1; i++) { 
          if (v[i] < m )
              m= v[i]
      }
      return m
    }
    var a= new Array (1,2,3,4,5,6,7);
    // Максимальный элемент
    alert(maxelem(a));
    // Минимальный элемент
    alert(minelem(a));
    </script>
    
     
  20. Fliplab

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

    Joined:
    29 Jul 2008
    Messages:
    123
    Likes Received:
    20
    Reputations:
    3
    Есть список.
    <select name="user_metro" class="wmax" >
    <option value="Авиамоторная">Авиамоторная</option>
    <option value="Автозаводская">Автозаводская</option>
    <option value="Академическая">Академическая</option>
    <option value="Александровский сад">Александровский сад</option>
    </select>
    Как сделать так, стобы в меню выделялось та опция, значение которой мне надо
     
Thread Status:
Not open for further replies.