借助JQuery& amp;更改边框颜色阿贾克斯

时间:2013-07-04 11:08:12

标签: php ajax jquery

如果在Ajax的帮助下MySQL中没有该用户名,是否可以更改Textbox的边框颜色?用PHP的JQuery?我在网上搜索了很多,但我得到的是如何使用Ajax更改div的innerHTML,如果我想显示Tick或Cross图像,这很有用。请帮忙

6 个答案:

答案 0 :(得分:2)

如下所示进行ajax调用,并使用formdata传递用户名,并使用database检查。如果无法从数据库中获取用户名,则在响应中发送标记'false'。

$.ajax({
            type: "POST",
            url: "your_url to post",
            data: formdata,
            dataType: 'json',
            success: function (msg) {
                 if(msg=='false')
                     $('#tbxControl').attr('style','border:1px solid #000');
            }
});

答案 1 :(得分:0)

  1. 检查jQuery文档“如何更改元素的样式”
  2. 检查jQuery文档“如何发送ajax请求”
  3. 组合1)和2):在回调函数中发送检查用户名的请求 适应元素的风格

答案 2 :(得分:0)

这很容易。您可以根据ajax响应更改边框;要更改边框,请在jQuery对象上使用css方法。

实施例: http://jsfiddle.net/mCk6z/

jQuery(function(){
    $('#username').css({'border': '1px solid #000'});

});

答案 3 :(得分:0)

结帐this tutorial

如果你去第40行之后的 Jquery部分,你只需要添加:

$('#username').css({border: "1px solid red"});

希望它有所帮助! 干杯

答案 4 :(得分:0)

对我有用的解决方案:)

<强> HTML

<input type="text" name="eMailTxt" id="eMailTxt" class="texttt" placeholder="Email Address" onChange="showUser(this.value)" />

<强> AJAX

function showUser(str)
{
    if (str=="")
    {
        $('#eMailTxt').css({'border':'blue 2px solid'});
    }
    if (window.XMLHttpRequest)
        {// code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp=new XMLHttpRequest();
        }
        else
        {// code for IE6, IE5
            xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
        xmlhttp.onreadystatechange=function()
        {
            if (xmlhttp.readyState==4 && xmlhttp.status==200)
            {
                if (xmlhttp.responseText=="false")
                {
                    $("#eMailTxt").css({'border':'red 2px solid'});
                }
                else
                {
                    $("#eMailTxt").css({'border':'green 2px solid'});
                }
            }
        }
    xmlhttp.open("GET","login.php?q="+str,true);
    xmlhttp.send();

}

<强> PHP

<?php
    $q=$_GET["q"];
    $con=mysqli_connect("localhost","root","","my_db");
    $check="SELECT Email FROM persons WHERE EMAIL = '".$q."'";
    $data=mysqli_query($con,$check);
    $result=mysqli_fetch_array($data);
    if ($result[0]==$q)
    {
        echo "true";
    }
    else
    {
        echo "false";
    }
?>

答案 5 :(得分:0)

您可以创建一个错误的用户名类

.badUsername{
Border-colour: <colour of your choice>
}

然后在ajax成功或失败功能中,您可以将此类应用于文本框

$(#<TextboxID>).addClass(badUsername);

(您也可以使用removeClass或hasClass对元素执行检查)

另一个选择是直接在成功或失败功能中调整样式

$(#<TextboxID>).css(“border-colour: <colour of your choice>;”);