Javascript 在不使用load()的情况下重新加载div

Javascript 在不使用load()的情况下重新加载div,javascript,php,jquery,html,forms,Javascript,Php,Jquery,Html,Forms,我有一个表单,我想通过它上传一个用户名,该用户名工作正常,但希望在他上传后立即显示它,方法是单击“保存”按钮(提交类型),而不重新加载页面。目前,该名称正在上载,但仅在我重新加载页面时显示。有任何建议吗?请不要建议使用load()因为它与不同的浏览器存在兼容性问题 <div id="nameform"> //contains code to upload name via form </div> <div id="name"> <?

我有一个表单,我想通过它上传一个用户名,该用户名工作正常,但希望在他上传后立即显示它,方法是单击“保存”按钮(提交类型),而不重新加载页面。目前,该名称正在上载,但仅在我重新加载页面时显示。有任何建议吗?请不要建议使用load()因为它与不同的浏览器存在兼容性问题

  <div id="nameform">
    //contains code to upload name via form
    </div>

<div id="name">
<?php 
$query1=mysqli_query($dbc,"select * from users where Email='".$_SESSION['Email']."'");
$row=mysqli_fetch_assoc($query1);
$name=$row['name'];
if ($name!="")
 echo "$name";
else echo "Your name please....";
?>
</div>

$("#btn").click(function() {//#btn is a submit button in the form
    document.getElementById("name").style.display="block";
    document.getElementById("nameform").style.display="none";

});

$("#formname").submit(function () {
     $.ajax({
      url:"formname.php",
      data:$("#formname").serialize(),
      type:"POST",
      success:function(data){
        console.log(data);
        if(data=="xyz"){

            $("#formname")[0].reset();
            $("#formname").on("click",".sframe",f(0));
        } 
      },
      error:function(data){
        alert("Network error");
      }
    })
   return false;
 });

//包含通过表单上载名称的代码

我假设您已经在ajax页面formname.php中编写了插入代码。在Ajax调用中,如果名称成功插入数据库,则使用select查询获取名称

$query1=mysqli_query($dbc,"select * from users where Email='".$_SESSION['Email']."'");
$row=mysqli_fetch_assoc($query1);
$name=$row['name'];
并回显用户名。 其他的 回显“0”以进行错误处理

现在在ajax调用脚本中,而不是

if(data=="xyz"){

        $("#formname")[0].reset();
        $("#formname").on("click",".sframe",f(0));
    }


看看ajax。它允许您在不重新加载页面的情况下更新divs。第3行的语法错误:
我添加了用于上载名称的ajax函数。您能告诉我它有什么问题吗?@user3774008问题中的代码本身就是formname.php?如果没有,更新完成后formname.php输出的具体内容是什么?它在mysql中插入数据并返回“xyz”(在php脚本的末尾返回“xyz”),在这里回显用户名不是不安全的吗?在不重新加载页面的情况下与服务器交互的唯一方法是ajax调用。所以,如果您熟悉MVC体系结构,那么我们将用户界面放在视图文件(比如nameform.php)中,并将逻辑部分放在控制器文件(比如formname.php)中。现在,如果您通过ajax将数据从name.php返回到nameform.php,那么就不会有安全问题,因为为了发送ajax调用的响应,您需要将数据从fromname.php返回到nameform.php
 if(data!=0){

        $("#name").text(data); // It will put the name in the div
        $("#formname").on("click",".sframe",f(0));
    }
 else
  {
    alert("Data insertion error");
  }