刚学flask的前后端互动做个小测试
hrml代码如下:
运行如下:
按道理不是应该显示:chinese 吗?
应该是有3个问题:
1、ajax参数写错了,应该是data,而不是date;
2、form表单需要加上enctype="multipart/form-data"这个属性;
3、ajax请求方式改成post
具体代码如下:
<button id=" but" onclick="submiteee();">提交</button>
<form action="" name="form1" enctype="multipart/form-data">
<select name="" id="select">
<option value="chinese">中文</option>
<option value="english">英文</option>
</select>
</form>
<script>
function submiteee(){
var fd=new FormData();
fd.append('sl',$('#select option:selected').val());
$.ajax({
url:'http://localhost',
type:'post',
data:fd,
dataType:'json',
processData: false, //必须
contentType: false, //必须
error:function (error) {
console.log(error);
}
})
}
</script>
有帮助的话,请点采纳~
你的ajax的参数错了,不是date,是data。如下:
$.ajax({
url:"http://localhost",
data:fd,
dataType:'json',
success:(res) => {
// todo 服务器返回的数据
console.log(res);
}
});
在服务器端,在printfd函数里面写入打印函数
print(fd)
如果执行到printfd的时候会有日志,没有的没有执行到这个函数。在返回的时候,应该返回的json数据,在前端进行处理