Javascript Ajax调用和node.js
我在使用express.js时,在将ajax调用与node.js集成时遇到问题。 这是我的代码: Page.htmlJavascript Ajax调用和node.js,javascript,jquery,ajax,node.js,express,Javascript,Jquery,Ajax,Node.js,Express,我在使用express.js时,在将ajax调用与node.js集成时遇到问题。 这是我的代码: Page.html <div id = "prezzo" class="col-md-12" style = "display : none"> <div class="col-md-2 col-md-offset-3"> <h1 id = "h1">€ </h1> </div> <
<div id = "prezzo" class="col-md-12" style = "display : none">
<div class="col-md-2 col-md-offset-3">
<h1 id = "h1">€ </h1>
</div>
<div class="col-md-4">
<input style="margin-top: 17px" type="submit" class="btn btn-sommatinese btn-lg btn-block" />
</div>
</div>
</div>
<script type = "text/javascript">
$("#form1").submit(function()
{
$("#prezzo").fadeIn(600, function()
{
$.ajax({
url: "http://localhost:3000/prezzo",
type: "GET",
success: function(data)
{
console.log(data);
$("#h1").append(data.biglietto);
}
});
});
});
</script>
ajax调用不起作用,我得到的是一个带有查询结果的白色页面,如下所示:
{
比格利托:2.70
}我在你的HTML中看不到form1,但无论如何
问题是,当您触发提交事件时,除了您在提交处理程序中添加的内容外,还会发生一系列默认行为,例如使用您不想要的请求结果重新绘制整个页面
您需要做的是防止默认行为,这样您的事件处理程序就是提交时唯一发生的事情。提交处理程序的前两行应该如下所示:
$("#form1").submit(function(event){
event.preventDefault();
然后,您可以继续使用其余的代码 如果我写event.preventDefault,ajax调用可以工作,但服务器不发送任何内容。我真的不明白为什么=\
$("#form1").submit(function(event){
event.preventDefault();