Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 18.08.2017, 22:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

-=Женька=-,
var btn = document.querySelectorAll("a");
var mestor = 0;
for (var i=0;i<btn.length;i++){
    btn[i].addEventListener("click", function(event) {
        event.preventDefault();
        var mesta = this.getAttribute('data');
        switch (mesta) {
            case "1":
                mestor = "Шапка сайта";
                break;
            case "2":
                mestor = "Под шапкой сайта. 1";
                break;
            case "3":
                mestor = "Под шапкой сайта. 2";
                break;
            default:
                mestor = "Не знаю";
        }
  })
}
Ответить с цитированием
  #12 (permalink)  
Старый 18.08.2017, 22:49
Аспирант
Отправить личное сообщение для -=Женька=- Посмотреть профиль Найти все сообщения от -=Женька=-
 
Регистрация: 27.06.2014
Сообщений: 33

рони,
не передается. Но уже все отправляется без ошибок.
может отправлять в кэш, а перед отправкой ajax узнать что там лежит ?
Ответить с цитированием
  #13 (permalink)  
Старый 18.08.2017, 22:52
Аспирант
Отправить личное сообщение для -=Женька=- Посмотреть профиль Найти все сообщения от -=Женька=-
 
Регистрация: 27.06.2014
Сообщений: 33

рони,
По идее если даже со свича ничего не передается то должно идти var mestor = 0;
Ответить с цитированием
  #14 (permalink)  
Старый 18.08.2017, 23:06
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от -=Женька=-
не передается. Но уже все отправляется без ошибок.
всё передатся - нажать по любой ссылке - затем нажать Submit
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css"> .modal{
    display: none;
  }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
var btn = document.querySelectorAll("a");
var mestor = 0;
for (var i=0;i<btn.length;i++){
    btn[i].addEventListener("click", function(event) {
        event.preventDefault();
        var mesta = this.getAttribute('data');
        switch (mesta) {
            case "1":
                mestor = "Шапка сайта";
                break;
            case "2":
                mestor = "Под шапкой сайта. 1";
                break;
            case "3":
                mestor = "Под шапкой сайта. 2";
                break;
            default:
                mestor = "Не знаю";
        }
     $(".modal").show()
  })
}

$("#contactForm").on("submit", function (event) {
  event.preventDefault();
  alert(mestor);
  $(".modal").hide();

});


});
  </script>
</head>

<body>
<a href="#" class="btn-background" data-toggle="modal" data-target=".modal" data="1">Кнопка ведет на форму</a>
 <a href="#" class="btn-background" data-toggle="modal" data-target=".modal" data="2">Кнопка ведет на форму</a>
 <a href="#" class="btn-background" data-toggle="modal" data-target=".modal" data="3">Кнопка ведет на форму</a>

<div class="modal">
 <!-- Form starts -->
 <form id="contactForm" action="" method="POST" >
 <fieldset>
 <legend>Contact Form</legend>
   <table width="100%" border="0">
     <tr>
       <td width="120"><label for="name">Name</label></td>
       <td><input name="name" id="name" size="30" /></td>
     </tr>
     <tr>
       <td width="120"><label for="email">E-mail</label></td>
       <td><input name="email" id="email" size="30" /></td>
     </tr>
     <tr>
       <td width="120" valign="top"><label for="comments">Comments</label></td>
       <td><textarea name="comments" id="comments" rows="5" cols="40"></textarea></td>
     </tr>
     <tr>
       <td>
       </td>
       <td>
         <input type="submit" name="Submit" value="Submit" />
       </td>
     </tr>
   </table>
 </fieldset>
 </form>
 <!-- Form ends -->
 </div>
</body>
</html>
Ответить с цитированием
  #15 (permalink)  
Старый 18.08.2017, 23:25
Аспирант
Отправить личное сообщение для -=Женька=- Посмотреть профиль Найти все сообщения от -=Женька=-
 
Регистрация: 27.06.2014
Сообщений: 33

рони,
Тогда спасибо )
только не пойму что мешает передаться,а точней дойти до ajax
Ответить с цитированием
  #16 (permalink)  
Старый 18.08.2017, 23:49
Аспирант
Отправить личное сообщение для -=Женька=- Посмотреть профиль Найти все сообщения от -=Женька=-
 
Регистрация: 27.06.2014
Сообщений: 33

рони,
Нашел проблему Как всегда все очень глупо.

default:
var = mestor = "Не знаю";

убрал var =
Ответить с цитированием
  #17 (permalink)  
Старый 18.08.2017, 23:58
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

-=Женька=-,
ок.
Ответить с цитированием
  #18 (permalink)  
Старый 19.08.2017, 04:19
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

-=Женька=-,
выбрасывать надо это. Каждая форма может иметь скрытое поле содержащее значение позиции. Источником позиции может служить и кнопка отправления формы. Это наряду с другими полями формы и нужно передавать, но не склеивая руками, а достаточно в обработчике отправления $(this).serialize().

Никаких дополнительных скриптов получающих от ссылок данные совсем не требуется.
Ответить с цитированием
  #19 (permalink)  
Старый 19.08.2017, 10:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070

Сообщение от laimas
Каждая форма может иметь скрытое поле
форма одна, модальное окно в котором форма тоже одно, кнопок много для открытия, у ТС всё логично, нужно указать в контексте какой кнопки открыта форма
Сообщение от -=Женька=-
модальное окно с одной формой
Ответить с цитированием
  #20 (permalink)  
Старый 19.08.2017, 11:29
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

рони,
значит надо записывать сразу в элемент формы из data ссылки без switch.

А если выбросить ссылки, заменив их на label с дочерними radio, то и этого не требуется.

Последний раз редактировалось laimas, 19.08.2017 в 11:38.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отправка формы после ajax проверки ShutTap Общие вопросы Javascript 15 08.04.2016 11:46
Переменная из php в ajax DuMBaSSn1 AJAX и COMET 6 09.10.2011 15:38
Ajax таблица gofkane Работа 1 26.09.2011 18:26
Ajax таблица gofkane Работа 0 25.09.2011 11:53
Ajax разбор метода mycoding jQuery 14 21.05.2010 10:57