点击提交按钮不刷新页面

原因 :点击提交按钮提交搜索条件进行异步请求,结果页面总是会进行刷新,导致异步返回的数据无法在页面上渲染。

简单代码如下:

<body>
<form id="formID">
            <table width="100%">
                <tr>
                    <td>
                        <table >
                            <tr>  

                                <td>查询条件:</td>
                                <td>
                                    <input  id="queryData" name="name" type="text"  placeholder="请输入查询数据">
                                </td>
                            </tr>

                        </table>
                    </td>

                        <button id="search" onclick="initSearch()" ></i>查询</button>
                        <button type="reset" id="resetBtn">重置</button>
                    </td>
                    <td ></td>
                </tr>
            </table>
        </form>
 </body>
通过上面的html 当点击查询按钮时 会请求initSearch() 方法 在js中进行异步请求 ,但是会刷新网页

js代码如下

<script>
    function initsearch(){
        $.post("写入需要跳转的url",$('#formID').serialize(),function(data){
            //data中是服务端返回的数据
            //这里进行成功后的渲染。。。。。。
        });

    }
</script>
为了达到页面不刷新的效果,可以在查询的button节点下的onclick属性里 加 return, 并且调用方法完成后返回false;

代码如下:

//html代码

                        <button id="search" onclick="return initSearch()" ></i>查询</button>
                        <button type="reset" id="resetBtn">重置</button>

//js代码

function initsearch(){
        $.post("写入需要跳转的url",$('#search').serialize(),function(data){
            //data中是服务端返回的数据
            //这里进行成功后的渲染。。。。。。
        });
return false;//在这里返回false
}
通过以上的两个节点能够达到简单的提交不刷新效果

写的有点乱 不足之处还请指正谅解
后续会有补充————————————-

在HTML中,提交按钮通常用于提交表单数据到服务器。当点击提交按钮时,默认行为是重新加载整个页面。如果你不希望页面刷新,可以通过JavaScript来拦截表单的提交事件,并通过AJAX方式异步提交表单数据到服务器,然后根据服务器的响应更新页面的某一部分,而不是整个页面。 以下是一个简单的例子,展示了如何使用JavaScript阻止表单的默认提交行为: ```html <form id="myForm"> <!-- 表单内容 --> <input type="text" name="username" /> <input type="submit" value="提交" onclick="return submitWithoutRefresh();" /> </form> <script> function submitWithoutRefresh() { // 获取表单元素 var form = document.getElementById('myForm'); // 使用AJAX提交表单数据 var xhr = new XMLHttpRequest(); xhr.open('POST', 'your-server-endpoint', true); xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { // 处理服务器响应 var response = JSON.parse(xhr.responseText); // 更新页面内容 document.getElementById('someElement').innerHTML = response.message; } }; xhr.send(new FormData(form)); // 阻止表单的默认提交行为 return false; } </script> ``` 在上面的代码中,当点击提交按钮时,`submitWithoutRefresh`函数会被调用。这个函数创建了一个AJAX请求来异步提交表单数据,并处理服务器的响应。通过返回`false`,阻止了表单的默认提交行为,从而避免了页面的刷新
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值