2016-01-18 3 views
2

Я использую colorbox для создания диалогового окна отправки электронной почты, которое будет предварительно заполнено данными, которые в основном генерируются на стороне сервера, но мне также требуются некоторые данные из полей ввода на стороне клиента (родительская/вызывающая страница) ,colorbox post form values ​​

Моя проблема заключается в том, что jquery, похоже, не работает в объекте данных. authorisation_number, в приведенном ниже примере, похоже, не получают разрешения на значение, которое находится в этом поле. Когда я проверяю данные POST на сервере, authorisation_number пуст, несмотря на то, что он является текстом в этом поле ввода, когда я нажимаю кнопку, чтобы запустить модальный.

// MODAL: Email Someone 
    $("#email_person").colorbox({ 

       width: "760", 
       height: "800", 
       data: { 
        template    : 'email-person-auth', 
        callref    : 12345, 
        email_add   : '[email protected]', 
        authorisation_number : $('#authorisation_number').val() 
       } 
    }); 

HTML

<input type='text' name='authorisation_number' id='authorisation_number'> 
<input type='button' class='submit_button' id='email_person' value='Email Someone' href='{{ url("customer-services/send-email") }}' > 

Кто-нибудь знает, как добавить данные из родительской страницы будут размещены?

+0

вы можете увидеть это сообщение http://stackoverflow.com/questions/3918606/post-form-results-into-colorbox-modal?rq=1 –

+0

спасибо, но я уже это прочитал. Он не отвечает на вопрос о том, как вы публикуете переменные данные с родительской страницы, например. значения, введенные пользователями в поля ввода. – fergusjk

+0

Обновление об этом. Если для поля задано значение на загрузке страницы, похоже, что сообщение похоже на то, что jquery работает внутри объекта данных, но мне нужно проверить его последним значением fergusjk

ответ

0

Так после игры вокруг решения, кажется, что вы берете на себя модальный экземпляр за пределами документа готова функцией

function emailPerson() { 

      $("#email_person").colorbox({ 

       width: "760", 
       height: "800", 
       data: { 
        template    : 'email-person-auth', 
        callref    : 12345, 
        email_add   : '[email protected]', 
        authorisation_number : $('#authorisation_number').val() 
       } 
      }); 
} 

, а затем вы можете использовать

$("#email_person").click(function() { 
    emailPerson(); 
}); 

Надеется, что это решение помогает другим.