首页 > 解决方案 > 如何在提交模式表单时禁用查询字符串出现在 url 上?

问题描述

我创建了一个用于提交单个文本输入的模式表单。我想通过 ajax 提交而不重新加载浏览器,但是每当我提交表单时自动关闭,页面刷新并且输入数据显示在 url 上,就好像它是使用 GET 方法提交的一样,即使我已经声明了类型:“POST”,关于阿贾克斯。请帮我解决这个问题。

我正在使用 codeigniter 3.9

html表单:

               <div class="modal-dialog">
                  <div class="modal-content">
                     <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                        <h4 class="modal-title" id="H3">Update Product Location</h4>
                     </div>
                     <div class="modal-body">
                        <form role="form">
                            <div class="row">
    <div class="col-md-8 form-group"><input class="form-control" name="pincodeloc" id="pincodeloc" placeholder="Enter pincode"/></div>
    <input type="hidden" name="prod_id" id="prod_id" value="" readonly/>
    <div class="col-md-4"><button type="submit" class="btn btn-primary" id="addproductlocbtn">Save</button></div>
                           </div>
                        </form>
                     </div>
                  </div>
               </div>
            </div> 

ajax code:
$("#addproductlocbtn").click(function() {
        addproductlocation();
    }); 

function addproductlocation() {
        var returnval = true;
        if (returnval==true) {
            $.ajax({
                    type: "POST",
                    url: baseUrl + "admin/product/productlocation",
                    data: {
                        pincode: $("#pincodeloc").val(),
                        prodid: $("#prod_id").val()
                    }
                })
                .done(function(msg) {
                    if (msg) {
                        $('#emsg').html('');
                        $("#pincodeloc").val('');
                        $("#prod_id").val('');
                    } else {
                        $('#success_msg').html('');
                        $('#emsg').html('<p>' + msg + '</p>');
                    }
                });
        } else {
            return false;
        }
}

url 上的查询字符串显示为:www.xyz.com/dashboard/product?pincodeloc=&prod_id=12

标签: phpajaxformscodeignitermodal-dialog

解决方案


如果您不想重新加载页面,请使用<button type="button">not <button type="submit">


推荐阅读