**编辑:刚刚注意到,在您的 HTML 中,您没有为“查找”字段提供 ID 属性。因此 $('#find').val() 会给你一个错误,比如“找不到未定义的方法 val()。将 id=find 标签添加到你的,它应该可以工作。
** 其他编辑:很抱歉造成混乱。您的表单具有 id=find 但您想要发送到服务器(我相信)的是字段的值。所以给你的输入一个 ID=name 然后使用:
var data = {find: $('#name').val()};
您应该首先使用控制台查看是否触发了事件。就像是:
<script>
$(document).ready(function() {
$("#submit").click(function(e){
e.preventDefault ? e.preventDefault() : e.returnValue = false; //This will prevent the regular submit
console.log('Hello');
});
});
</script>
(您确实使用 Fire bug 或 Chrome 开发工具,对吧)?如果没有,请看这篇文章的结尾。如果您可以在控制台中看到 Hello,则说明您走在正确的道路上。然后尝试在变量中设置您的 url 并尝试在控制台中检查它:
<script>
var url = "<?php echo SITE_URL;?>Training/test";
$(document).ready(function() {
$("#submit").click(function(e){
e.preventDefault ? e.preventDefault() : e.returnValue = false; //This will prevent the regular submit
console.log(url);
});
});
</script>
然后你应该在控制台中看到 url,这意味着你仍然做得很好。
如果可行,请尝试设置数据并以相同的方式检查输出:
<script>
var url = "<?php echo SITE_URL;?>Training/test";
var data = {
find: $('#find').val()
};
$(document).ready(function() {
$("#submit").click(function(e){
e.preventDefault ? e.preventDefault() : e.returnValue = false; //This will prevent the regular submit
console.log(data);
});
});
</script>
希望一切仍然有效(您看到了数据),然后尝试实际的完整代码,看看您是否有错误或其他什么。此外,请确保在您的 ajax 调用中包含错误函数,以便在服务器出现问题时得到响应。
<script>
var url = "<?php echo SITE_URL;?>Training/test";
$(document).ready(function() {
$("#submit").click(function(e){
e.preventDefault ? e.preventDefault() : e.returnValue = false; //This will prevent the regular submit
var url = "<?php echo SITE_URL;?>Training/test";
var data = {
find: $('#find').val()
};
$.ajax({
type:'POST',
url: url,
data: data,
success: function(response) {
alert (response);
},
error: function(resp) {
alert(resp.responseText);
}
});
});
});
</script>
一些可以帮助您的工具:
如果您使用的是 FireFox,请使用 FireBug 进行调试:https ://addons.mozilla.org/fr/firefox/addon/firebug/
如果您使用的是 Chrome(我个人最喜欢的),请进一步了解 Chrome 开发人员工具:https ://developers.google.com/chrome-developer-tools/?hl=fr
如果您使用的是 IE,请切换到其他用于开发目的,然后在 IE 中尝试以确保您的代码兼容(很可能不会,但之后会更容易找出它为什么不起作用) .
至于 e.preventDefault...... 行,请查看此 SO 帖子以获取更多详细信息:https ://stackoverflow.com/a/15913969/1483513
希望这可以帮助 !