这是下面的我的ajax代码
$('.username-check').on('click', function() {
//console.log('You clicked');
alert(username);
var username = $('.username-target'),
lastname = $('.lastname-target'),
feedback = $('.username-feedback');
function changeFeednackText(text){ feedback.text(text); }
function couldNotCheck(){ changeFeednackText('Could not check at this time'); }
$.ajax({
url: 'check/username.php',
type: 'get',
data: {
username: username.val(),
lastname: lastname.val()
},
dataType: 'json',
success: function(data){
if(data.available !== undefined){
if(data.available === true){
changeFeednackText('That username is available.');
}else{
changeFeednackText('Sorry, that username is not available.');
}
}else{
couldNotCheck();
}
},
error: function(){
couldNotCheck();
}
});
});
我的HTML代码
<form action="signup.php" method="post" autocomplete="off">
<div>
<label for="username">First Name<input type="text" name="username" id="username" class="username-target"></label><br />
<label for="lastname">Last Name<input type="text" name="lastname" id="lastname" class="lastname-target"></label><br />
<a href="javascript:;" class="username-check">Check username</a>
</div>
<div class="username-feedback"></div>
<div><input type="submit" value="Check"></div>
</form>
我的PHP也在下面
header('Content-Type: application/json');
$username = (isset($_GET['username'])) ? htmlspecialchars($_GET['username']) : null;
$lastname = (isset($_GET['lastname'])) ? htmlspecialchars($_GET['lastname']) : null;
$available = true;
if($username == 'bar' && $lastname == 'foo'){
// if($username == 'bar'){
$available = false;
}
$arr = array('username' => $username . $lastname, 'available' => $available);
echo json_encode($arr);
如果我使用像false
这样的if语句,上面的代码可以正常工作并返回if($username == 'bar'){
,但是当我用来检查两个值(例如if($username == 'bar' && $lastname == 'foo'){
)时,它总是返回true
。
请注意,我分别尝试将foo和bar分别设置为username
和lastname
来获得false
回调,但没有成功。不知道这里出了什么问题,但是我希望你们中的任何人都可以发现错误并帮助我..您有什么主意吗?
参考方案
尝试更改:
if(data.available !== undefined){
至
if( typeof(data.available) != "undefined" ) {
在您的成功职能中。
打印二维阵列 - javascript我正在尝试打印子元素。在this example之后。怎么做?。$myarray = array("DO"=>array('IDEAS','BRANDS','CREATIVE','CAMPAIGNS'), "JOCKEY"=>a…
将简单的javascript代码转换为c# - javascript昨天我在这里问了一个问题。使用javascript和html解决方案很简单前一阵子我打算什么是操纵html来执行javascript中的任务但是我改变了主意,将javascript代码重写为c#这是输入<Abstract> <Heading>Abstract</Heading> <Para TextBreak=…
如果复选框切换复选框已选中,则在切换div中输入必填字段 - javascript我使用脚本用JavaScript切换了一些div。如果要选中复选框以显示toogle div,我想在toogle div中设置一些“必填”输入字段。有人能弄清楚吗?那是工作吗?function show(id) { if(document.getElementById) { var mydiv = document.getElementById(id); m…
在laravel中应用ajax - javascript我想在laravel 4.2中应用ajax。我想重定向到页面而不重新加载它。我已经尝试过使用window.loaction.href和window.loaction.assign了,但是它不起作用。这是我的文件Route.php //login+logout+auth Route::get('login','authentica…
从其他文件夹访问母版页 - javascript我认为这应该很容易但不确定如何解决。我在主文件夹中有一个名为01.aspx的页面01.aspx页应该继承products.master项目根目录存在于products.master中像下面的照片:我使用波纹管代码,但没有任何工作的JavaScript,图像和...01.aspx<%@ Page Title="" Language=&…