2014-01-07 4 views
0

Следующий код действительно отправляет и с тем же я должен отображать окно предупреждения, в котором было отправлено сообщение.Как отобразить окно предупреждения?

Код:

<input type="button" class="Jdvs_Btn" onclick="send_reply('SEND_REPLY', <? echo $clsSurvey->feedback_id?>);" value="SEND" style="font-weight:bold;width:95px;height:30px;float:left; margin-right:5px;" /> 

И Javascript

Код:

if(action == "SEND_REPLY") 
{ 
if(frm.email.value == "") 
{ 
    alert("Please fill your email."); 
    frm.email.focus(); 
    return false; 
} 
else if(validateEmailAddress(frm.email.value) == false) 
{ 
    alert("Please fill a valid email."); 
    frm.email.focus(); 
    return; 
} 
else if ((tinymce.EditorManager.get('content_to_send').getContent()) == '') 
{ 
    alert("Please enter content to send."); 
    return; 
} 
else 
{ 
    frm.form_action.value = action; 
    frm.submit(); 
    alert('Message Sent Successfully'); 
} 

}

Код для рассылки: Это где проверка и другие закончите , мне нужно отобразить окно оповещения здесь Код:

function sendReply() 
{ 
    echo $this->feedback_id; 
    $this->checkAndUpdateReply($this->feedback_id,$this->content_to_send); 
    $Message = nl2br($this->content_to_send); 
    $mailMessage = " 
    <html> 
    <head> 
    <title>constant('_SHORT_PRODUCT_NAME') - Feedback Mail</title> 
    </head> 
    <body>"; 
      $Message = nl2br($this->content_to_send); 
     $mailMessage.= $Message." 
    <table border='0' cellpadding='0' cellspacing='0'width='100%'> 
    <tr> 
    <td style='$css_class' align='left'><br/>Email: "._EMAIL_INFO."</td> 
     </tr> 
     <tr> 
     <td style='$css_height' align='left'><br /><b>Note</b>:- This is an automatically generated email , Please dont reply back to this mail.</td> 
    </tr> 
     </table> 
    </body> 
    </html>";  
    $mailSubject= constant('_SHORT_PRODUCT_NAME').' - FeedBack Reply'; 
    $clsEmailTempalte = new clsEmailTemplate($connect, ""); 
    $clsEmailTempalte->sendMail($mailSubject,$mailMessage,$this->email); 
} 
+0

Добро пожаловать в SO, ваш код пока? – Goikiu

ответ

2

В конце вашего send_reply Javascript функция вобще alert("Mail Sent");

Если вы используете AJAX (например, с jQuery) вам нужно добавить свое предупреждение к обратному вызову.

Для JQuery:

var jqxhr = $.ajax("example.php") 
    .done(function() { 
    alert("success"); 
    }) 
+1

он просто показывает окно предупреждения перед отправкой сообщения –

+0

Если javascript добирается до этой точки, сообщение отправлено, если вы используете свой вызов ajax выше. –

+0

if (frm.email.value == "") { \t alert ("Пожалуйста, заполните адрес электронной почты."); \t return false; } еще \t \t \t { \t \t \t \t \t \t \t frm.form_action.value = действие; \t \t \t \t frm.Отправить(); \t \t \t \t предупреждение («Сообщение отправлено успешно»); \t \t \t} –

0

В вашем яваскрипте функции send_reply просто добавьте линии

alert("Message sent"); 

должен работать.

0

Просто введите alert("message has been sent"); в конце вашей функции js.

0

Если я делал это (используя jQuery). Я бы назвал этот файл PHP, который отправляет сообщение электронной почты с помощью Ajax, как так:

Ваш HTML:

<input type='button' id='submit_form' data-id='<? echo $clsSurvey->feedback_id?>' /> 

Ваш JavaScript:

$('#submit_form').click(function(e){ 

    // To stop the form submitting on button click if you want it to... 
    e.preventDefault(); 

    // Send the id via post to the mailscript 
    $.ajax({ 
     url: 'mailscript.php', 
     type: 'POST' 
     data: { 
      id: $(this).attr('data-id') 
     } 
    }).done(function(data){ 
     // Use data if you want to return something from the script and add to the message maybe? 
     alert('Add your message in here'); 
    }); 

}); 

Тогда просто добавьте свой почтовый PHP внутри mailscript.php (или все, что вы хотите назвать). всякий раз, когда ваш скрипт завершил свою работу, проделанная функция покажет ваше предупреждение.

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