Ajax,只是发送不显示页面的值

时间:2016-08-06 04:45:50

标签: javascript php jquery html ajax

我有两个带有php和html的文件。这是我的A.php文件中的基本信息

<div class="col-md-8">
  <input type="email" class="form-control" placeholder="Ingresar Número de Nota" id="idnote" name="idnote">
</div>
<button type="button" class="btn btn-primary" id="notes">Enviar</button>

当用户点击按钮时,它会调用js中的一个函数。

$(document).ready(function() { 
    var formData = {
        'id'         : $('input[name=idnote]').val()
    };
    $.ajax({
        type         : 'POST',
        url          : '../consults/findnote.php',
        data         : formData,
        dataType : 'json',
        encode   : true
    })
        .done(function(data) {
            //Going to findnote.php and keeping formData
            //This findnote.php contains a completely different design but I need the first value to make some changes for the user. 
        })

    });
});

问题是在ajax之后,我的网页不会发现findnote.php只是发送值,而我需要显示findnote.php 我知道我是否使用

event.preventDefault();

Ajax会阻止重载,但我没有使用它。

有办法吗? 如何在创建window.location后保留值? (因为如果我在成功通话后调用该文件我会失去价值) 我应该只尝试使用PHP吗? (这是一个选项)

2 个答案:

答案 0 :(得分:3)

为什么不做纯HTML?

<form action="../consults/findnote.php" method="POST">
    <div class="col-md-8">
       <input type="email" class="form-control" placeholder="Ingresar Número de Nota" id="idnote" name="id">
    </div>
    <button type="submit" class="btn btn-primary" id="notes">Enviar</button>
</form>

刚添加了表单标签并编辑了输入名称,符合您的功能结果。

&#34;问题是在ajax之后,我的网页不会发现findnote.php只是发送值&#34; 这基本上是为ajax制作的:)

使用ajax,您可以根据需要将结果附加到当前页面(您没有在代码中添加数据。只是发送了数据)。

带有表单标记的另一个解决方案,如上所示,将结果作为新页面加载,就像经典链接一样。

答案 1 :(得分:0)

您需要创建一个表单并传递一个函数,该函数将在表单提交和重定向

之前运行
<form action="../consults/findnote.php" method="POST" onsubmit="myfunction()">
  <input type="email" class="form-control" placeholder="Ingresar Número de Nota" id="idnote" name="idnote">
</div>
<button type="submit" class="btn btn-primary" id="notes">Enviar</button>
</form>

然后在你的jquery中你可以做到

function myfunction() {

 var formData = {
        'id'         : $('input[name=idnote]').val()
    };
    $.ajax({
        type         : 'POST',
        url          : '../consults/findnote.php',
        data         : formData,
        dataType : 'json',
        encode   : true
    })
        .done(function(data) {
            //Going to findnote.php and keeping formData
            //This findnote.php contains a completely different design but I need the first value to make some changes for the user. 
        })

    });
}