2013-09-27 5 views
0

Если моя форма заполнена полностью, как я могу предложить «Спасибо за заполнение формы», имя «!».javascript prompt с именем

function submit_onclick() { 
    if(confirm("Thanks for completing the form " + form.name.value)) 
    document.forms[0].submit(); 
    else 
    return false; 
} 

JQuery-1.10.2.min.js сценарий SRC = "jquery.validate.min.js это мои внешние через JQuery. Он проверяет рядом с формой. Мне просто нужно приглашение говорить„Имя“ спасибо за завершение.

jsFiddled here

это заставляет даже тогда, когда форма пуста.

+0

Можете вы добавить свой код в jsFiddle? –

+16

Как потенциальный пользователь вашего веб-приложения, я прошу вас не реализовывать это вообще. –

+0

Вы должны вручную проверить, что все поля заполнены, и только в этом случае попросите подтвердить. И вручную я имею в виду использование JS для проверки. Мы говорим о некоторых, если. –

ответ

0

Я собираюсь стиснуть зубы и дать вам ответ, который вы хотите, но я сильно призываю вас никогда не делал этого, а не через миллион лет.

Пользователи ненавидят щелчки, и даже если ваш диалоговое окно «представительный» (читай: обращается к ним по каким бы именем они представляют), это очень раздражает, и я не нравится. Но вот как вы это сделать, так как вы просили, с помощью Jquery:

function isFormValid() { 
    //validate your form here, and return either true or false 
} 

function submit_onclick() { 
    if(isFormValid() && confirm("Thanks for completing the form " + $('#nameField').val()) { 
     $('#myForm').submit(); 
    } 
} 
+0

Я запомню информацию. Спасибо за помощь. – 2Truth

3

Расширяя ответ DesertIvy «s, я думаю, было бы гораздо меньше раздражает пользователя, если вы просто только выводится сообщение на веб-странице после того, как форма завершила проверку. Это было бы намного менее навязчиво. Что-то вроде этого:

<form id="myForm" action="http://example.com/formSubmit.php" method="post"> 
    <div> 
    <input type="text" name="name"> 
    <input type="submit"> 
    </div> 
</form> 

JavaScript:

function validForm() { 
    // form validation - return true or false 
} 

function submit_onclick() { 
    if(validForm()) { 
     $('#myForm').submit(); // this will submit the form to the form action 
    } 
} 

Тогда при загрузке страницы formSubmit.php, можно отобразить сообщение в теле HTML. Это если ваш серверный язык PHP:

<?php 
    if(isset($_POST['name']) 
     echo "Thanks for completing the form " . $_POST['name'] . "."; 
    else 
     renderFormBody(); // function for rendering the form body 
?> 
+0

как отображать эту эхо-строку на той же странице, по форме?его фиктивная форма – 2Truth

+0

Можно отправить сообщение в ту же форму, что и в PHP. Вам просто нужно проверить, что '$ _POST ['name']' установлен, а затем отображать это сообщение, если оно установлено. Я обновлю свой ответ, чтобы показать, как это делается. –

+1

Меня зовут DesertIvy, и я одобряю это сообщение. :) – Bucket

Смежные вопросы