使用 Ajax 和PHP在同一页面上,一次又一次地附加整页内容
我想在同一个页面上使用ajax和PHP。为此,我删除了 ajax 的 url
参数。现在,当我在文本框中输入内容时,它给出了我想要的结果,但它附加了一个新页面,其中包含 #check-username
内的所有元素。我不知道为什么它要附加新的文本框。请看一下我的代码。
<?php
global $wpdb;
if(!empty($_POST["username"])) {
$query = $wpdb->get_var("SELECT COUNT(*) FROM users WHERE username='" . $_POST["username"] . "'");
ob_clean();
if($query>0) {
echo "<span style='color:red'> Sorry User already exists .</span>";
}else{
echo "<span style='color:green'> User available for Registration .</span>";
}
}
?>
<span id="check-username"></span>
<label class="form-label" for="username">Username</label>
<input type="text" name="username" id="username" class="form-control"/>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function(){
$('#username').on('input', function() {
jQuery.ajax({
data:'username='+$(this).val(),
type: "POST",
success:function(data){
$("#check-username").html(data);
},
error:function (){}
});
});
});
</script>
I want to use ajax and PHP on the same page. For that I have removed the url
paramter of ajax. Now when I am typing in the textbox, it is giving me desired results but it is appending a new page with all the elements inside the #check-username
. I don't know why it is appending new textbox. Please take a look at my code.
<?php
global $wpdb;
if(!empty($_POST["username"])) {
$query = $wpdb->get_var("SELECT COUNT(*) FROM users WHERE username='" . $_POST["username"] . "'");
ob_clean();
if($query>0) {
echo "<span style='color:red'> Sorry User already exists .</span>";
}else{
echo "<span style='color:green'> User available for Registration .</span>";
}
}
?>
<span id="check-username"></span>
<label class="form-label" for="username">Username</label>
<input type="text" name="username" id="username" class="form-control"/>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function(){
$('#username').on('input', function() {
jQuery.ajax({
data:'username='+$(this).val(),
type: "POST",
success:function(data){
$("#check-username").html(data);
},
error:function (){}
});
});
});
</script>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
exit;
并使用isset
而不是!empty
解决了所有问题。感谢@M。埃里克森exit;
and usingisset
instead of!empty
, solved all the problems. Thanks to @M. Eriksson