使Div成为警告框 [英] Making a Div an alert box

查看:142
本文介绍了使Div成为警告框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嘿伙计们,如果可能的话,我只是对某事快速提问。



我有这个div:



 <   div     id   = 注册响应 >  <   / div  >  

根据用户输入的内容输出回复信息。





我的php方面:

  $ existingSignup  = mysql_query(  SELECT * FROM newsletter_emails WHERE email ='$ email'); 
if(mysql_num_rows($ existingSignup)< 1){

$ insertSignup = mysql_query( INSERT INTO newsletter_emails(email,category)VALUES('$ email','9'));
if($ insertSignup){ // 如果插入成功
$ status = success;
$ message = 你成功了订阅!;

$ date = date( O / M / d);
$ insertYo = INSERT INTO活动(日期,动作,图标)VALUES('$ date','用户已订阅','fa-envelope-o');
mysql_query($ insertYo) die(' MySQL错误。');
}





我想在用户成功订阅后发送ALERT,但是我尝试了这段代码

  echo  ' < script> alert( 这是响应消息。);< / script>'; 

替换

  $ message  =  您已成功订阅!; 





但它不起作用。我的javascript是:



  //  检查表单当前是否正在提交 
如果($( this )。data(' formstatus')!== ' 提交'){

// 设置变量
var form = $( this ),
formData = form.serialize(),
formUrl = form.attr(' action'),
formMethod = form.attr(' method' ),
responseMsg = $(' #signup-response');


// 将状态数据添加到表单
form.data(' formstatus'' 提交');

// 将数据发送到服务器进行验证
$。 ajax({
url:formUrl,
type:formMethod,
data:formData,
success:function(data){

// 设置变量
var responseData = jQuery .parseJSON(data),
klass = ' ';

// 响应条件
switch (responseData.status){
case ' 错误'
klass = ' alert alert-error';
break ;
case ' success'
klass = ' alert alert-success';
break ;
}

// show reponse message
responseMsg.fadeOut( 200 ,function(){
$( this )。removeClass(< span class =code-string>' response-waiting'
.addClass(klass)
.text(responseData .message)
.fadeIn( 200 ,function(){
// 设置超时以隐藏响应消息
setTimeout(function(){
responseMsg.fadeOut( 200 ,function(){
$()removeClass(克拉斯)。
form.data(' formstatus' ' idle');
});
}, 3000
});
});
}
});
}





我的HTML表格:



 <  表格    id   =  newsletter-signup    action   = ?action = signup    method   = 发布 >  
< input 类型 = text size = 37 占位符 = 输入您的电子邮件 名称 = 注册电子邮件 id = 注册电子邮件 / >
< 输入 类型 = 提交 value = 提交 style = padding:8px; id = 注册按钮 / >
< div id = 注册响应 > < / div >
< / form >







Do你们碰巧知道我做错了什么?



一旦我这样做,警报框似乎确实触发:



  var  form = $( this  ),
formData = form.serialize(),
formUrl = form.attr(' action '),
formMethod = form.attr(' method'),
responseMsg = $(' #signup-response')。text();
swal({
title: 成功
text : 您已成功订阅!
类型: success
timer: 3000
allowOutsideClick: true
});





但如果用户输入的内容不正确,它不会从php端传出响应。

解决方案

existingSignup = mysql_query( SELECT * FROM newsletter_emails WHERE email ='


电子邮件');
if(mysql_num_rows(


existingSignup)< 1){


Hey guys, just had a quick question about something, if it was possible.

I have this div:

<div id="signup-response"></div>

which outputs the message of responses depending on what the user enters.


my php side:

$existingSignup = mysql_query("SELECT * FROM newsletter_emails WHERE email='$email'");
            if(mysql_num_rows($existingSignup) < 1){

                $insertSignup = mysql_query("INSERT INTO newsletter_emails (email,category) VALUES ('$email', '9')");
                if($insertSignup){ //if insert is successful
                    $status = "success";
                    $message = "You've successfully subscribed!";

                    $date = date("o/m/d");
                    $insertYo = "INSERT INTO activity ( date, action, icon) VALUES ('$date', 'user has subscribed', 'fa-envelope-o')";
                    mysql_query($insertYo) or die('MySQL Error.');
                }



I want to send an ALERT once the user has successfully subscribed, however i tried this code

echo '<script>alert("this is the response msg.");</script>';

in replace of the

$message = "You've successfully subscribed!";



but it didn't work. My javascript is:

//check the form is not currently submitting
        if($(this).data('formstatus') !== 'submitting'){

            //setup variables
            var form = $(this),
                formData = form.serialize(),
                formUrl = form.attr('action'),
                formMethod = form.attr('method'),
                responseMsg = $('#signup-response');


            //add status data to form
            form.data('formstatus','submitting');

            //send data to server for validation
            $.ajax({
                url: formUrl,
                type: formMethod,
                data: formData,
                success:function(data){

                    //setup variables
                    var responseData = jQuery.parseJSON(data),
                        klass = '';

                    //response conditional
                    switch(responseData.status){
                        case 'error':
                            klass = 'alert alert-error';
                        break;
                        case 'success':
                            klass = 'alert alert-success';
                        break;
                    }

                    //show reponse message
                    responseMsg.fadeOut(200,function(){
                        $(this).removeClass('response-waiting')
                               .addClass(klass)
                               .text(responseData.message)
                               .fadeIn(200,function(){
                                   //set timeout to hide response message
                                   setTimeout(function(){
                                       responseMsg.fadeOut(200,function(){
                                           $(this).removeClass(klass);
                                           form.data('formstatus','idle');
                                       });
                                   },3000)
                                });
                    });
                }
            });
        }



my HTML form:

<form id="newsletter-signup" action="?action=signup" method="post">
         <input type="text" size="37" placeholder="Enter your email" name="signup-email" id="signup-email"/>
         <input type="submit" value="SUBMIT" style="padding: 8px;" id="signup-button"/>
         <div id="signup-response"></div>
                                    </form>




Do you guys happen to know what it is i'm doing wrong?

The alert box does seem to trigger once i do this:

var form = $(this),
                formData = form.serialize(),
                formUrl = form.attr('action'),
                formMethod = form.attr('method'),
                responseMsg = $('#signup-response').text();
                    swal({
                        title: "Success",
                        text: "You've successfully subscribed!",
                        type: "success",
                        timer: 3000,
                        allowOutsideClick: "true"
                    });



but it doesn't pass out that response from the php side if the user entered something correctly or not.

解决方案

existingSignup = mysql_query("SELECT * FROM newsletter_emails WHERE email='


email'"); if(mysql_num_rows(


existingSignup) < 1){


这篇关于使Div成为警告框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆