使用ajax进行在线名称检查时,Span标签不工作
span tag not working in online name checking using ajax
这是我的JavaScript代码,调用check.php文件检查数据库中用户的在线存在
<html>
<input type = "text" name="txt1" id="user" onKeyUp="check_username(this.value)"> <br>
<script>
var xmlhttp = false;
if (window.ActiveXObject) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} else {
xmlhttp = new XMLHttpRequest();
}
function check_username(str) {
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
var arr = xmlhttp.responseText.split("^");
document.getElementById("user").value = arr[1];
if (arr[0] == 1) {
</script>
<span style="color:blue">Username exists</span>
<script>
} else {
</script>
<span style="color:green">user available</span>
<script>
}
}
}
xmlhttp.open("GET", "check.php?txt1="+str, true);
xmlhttp.send();
}
</script>
</html>
下面是check.php file
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("check");
$username = ($_REQUEST['txt1']);
$a = 0;
if (checkexistence($username)) {
$a = 1;
echo $a."^".$username;
} else {
$a = 0;
echo $a."^".$username;
}
function checkexistence($username) {
$check = mysql_query("select uname from t1");
while ($row = mysql_fetch_array($check)) {
if (strcmp($username, $row['uname']) == 0) {
return true;
}
}
return false;
}
?>
当我使用alert时,它可以正常工作(当然,我们不能使用alert,因为它会变得太令人恼火),但是当我使用span标签时,它不能正确工作仅给
用户名已存在
作为输出,而不是在文本域中输入每个字符后检查。
我该如何改正??
不要在if
和else
语句之间关闭和打开脚本。
您可以使用jQuery
库轻松实现这一点。从这里下载jQuery库。您可以在页面底部包含这些jQuery
文件,如
<script src="js/jquery.1.11.0.js" type="text/javascript"></script>
让我们用另一种方式做那件事。使用after()的jQuery
方法在任意位置之间插入内容。
试试这段代码,
<input type = "text" name="txt1" id="user" onKeyUp="check_username(this.value)"> <br>
<span id="exist" style='color:blue'></span>
<span id="avail" style='color:green'></span>
<script>
var xmlhttp = false;
if (window.ActiveXObject) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} else {
xmlhttp = new XMLHttpRequest();
}
function check_username(str) {
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
var arr = xmlhttp.responseText.split("^");
document.getElementById("user").value = arr[1];
if (arr[0] == 1) {
$("#avail").html();
$("#exist").html('Username exists');
} else {
$("#exist").html();
$("#avail").html('User available');
}
}
}
xmlhttp.open("GET", "check.php?txt1="+str, true);
xmlhttp.send();
}
</script>
相关文章:
- 兰吉 |如何在 span 标签上使用单击事件删除突出显示的文本
- 如何使用 jQuery 将 span 标签添加到所选文本并将更改永久保存在本地 html 文件中
- JavaScript 正则表达式,用于保留 span 标签并删除其他标签
- 如何 chk 如果 span 标签是否包含文本
- Cheerio 'text()' 空字符串用于 span 标签
- 从span标签中获取值并从中扣除%(JavaScript)
- 选择 h2 标签的前两个单词并换行 span 标签
- 在按键上使用jquery从最近的span标签中获取文本
- 使用span标签中可用的Nokogiri抓取数据
- 火狐浏览器:点击事件不调用 SPAN 标签
- 在我的标签标签后预先键入span标签以进行搜索.如何正确添加标签
- 如何强制TinyMCE在P标签内创建SPAN标签
- 如何防止所有链接(其中有一个span标签)打开
- 用jQuery删除周围的双span标签.如何解决这个问题
- Javascript锚中的href和span标签
- 当某些东西被删除时,删除span标签
- 如何用jQuery在span标签中换行文本,除了第一个单词
- 在
内动态添加span标签链接 - 用Javascript在句子周围包裹span标签
- 如何在Span标签中获取值