【发布时间】:2016-05-22 03:01:53
【问题描述】:
我正在尝试通过使用 jQuery 的 .ajax() 函数将两个输入字段的值发送到 php 文件 (search_value.php) 来更新我的 div 内容 (#update_div)。
如果我只是使用 html 表单 POST 方法重定向输入字段的两个值,它就可以工作。所以search_value.php应该是正确的。
我的 HTML 代码:
<form id="my_form">
<input id="food" name="food">
<input id="amount" value="amount in gram" name="amount">
<input type="button" value="Update" id="submit" name="submit" />
</form>
<div id="update_div">
</div>
我的 Javascript 代码:
$("#submit").click(function() {
var food = $("#food").val();
var amount = $("#amount").val();
$.ajax({
url: 'search_value.php',
type: 'GET',
data: {"food":food,"amount":amount},
success: function(data)
{
$('#update_div').html(data);
}
});
});
我的 PHP 代码:
<?php
$pdo = new PDO('mysql:host=localhost;dbname=calotools', 'root', '');
$food = $GET_['food'];
$amount = $GET_['amount'];
$query="SELECT * FROM nahrungsmittel WHERE name = '$food'";
$user = $pdo->query($query)->fetch();
echo $user['name']."<br />";
echo $user['kcal'] / 100 * $amount;
?>
点击按钮并没有真正得到反馈。也许你们能告诉我为什么?
【问题讨论】:
-
把你的整个 $("#submit").click(function() javascript 放在你的浏览器控制台中,然后尝试点击提交按钮,它工作了吗?
-
使用浏览器控制台网络查看是否正在发出请求。添加一些错误处理。确保代码运行时存在
$('#update_div') -
你输入了
$GET_而不是$_GET -
我将整个 $("#submit").click(function() 放在浏览器控制台中,但是如果我单击提交按钮,它什么也不会发生。这是控制台的图片:i.stack.imgur.com/13w6F.png
标签: javascript php jquery ajax form-submit