javascript - Ajax success() 函数在 jQuery on 函数中不起作用
问题描述
我正在编写一个带有 ajax 函数的 jquery 代码,以在下拉更改时获取数据表单数据库。
但是 ajax 函数看起来没有执行,当我使用 chrome 浏览器检查代码时,它没有给出任何错误消息内部成功函数。
这是我的代码
$(document).ready(function() {
$('#prov_id').on('change', function() {
alert($('#prov_id').val());
$.ajax({
type: 'POST',
url: 'ajax_queries.php',
data: {
request: 'get_states',
prov_id: $('#prov_id').val()
},
success: function(data) {
alert(data);
}
});
});
});
此警报有效
alert($('#prov_id').val());
但这不是
success: function(data){
alert(data);
}
有什么帮助吗?
解决方案
dataType:'json'
在您的 ajax 请求中设置:
<script>
$(document).ready(function(){
$('#prov_id').on('change',function(){
$.ajax({
type: 'POST',
url: 'ajax_queries.php',
dataType:'json',
data: {request:'get_states',prov_id:$('#prov_id').val()},
success: function(data){
alert(data);
},
error:function(){
alert('Error :(');
}
});
});
});
</script>
推荐阅读
- postgresql - PHP - 如何更新 postgresql 表中的一些值
- javascript - React:在 Ajax 回调中设置状态
- generics - 在 kotlin 的 lambda 中使用多种泛型类型
- reactjs - 导入反应模块时命名冲突
- react-native - 反应导航抛出错误
- spring - Spring Cloud Stream 中的错误处理 - Kafka Binder
- c++ - SSBO 唯一缓冲区
- google-apps-script - OAuth 重定向 URL 不一致
- javascript - /(\d)(?=(\d{3})+(?!\d))/g 如何工作?
- python - 收到错误提示:没有这样的文件或目录:'mnist\\train-labels-idx1-ubyte'