一,ajax是什么 局部刷新页面
二,ajax原生代码
var xhr = new XMLHttpRequest(); // 创建一个对象
xhr.open('get','http://www.baidu.com?id=10') // 告诉ajax请求方式 和请求地址
xhr.send() // 如果是post请求 请求内容放到 send里面 使用json.parse() 转换一下
xhr.onload = function(){ // 监听xhr.onload完成事件执行
console.log(xhr.responseText);
}
三,formDate
var formDate = new FormData('表单元素')
formData.get('key'); // 获取表单中的key
formData.set('key', 'value'); // 设置表单中的key
formData.delete('key'); // 删除表单中的key
formData.append('key', 'value'); // 添加表单中的key
xhr.send(formData); //把表单中的数据 以formDate 发送给后端
四,同源策略 同端口,同域名,同协议
五,解决同源策略的方法
1.jsonp
// 为按钮添加点击事件
btn.onclick = function () {
// 创建script标签
var script = document.createElement('script');
// 设置src属性
script.src = 'http://localhost:3001/better?callback=fn2';
// 将script标签追加到页面中
document.body.appendChild(script);
// 为script标签添加onload事件
script.onload = function () {
// 将body中的script标签删除掉
document.body.removeChild(script);
}
}
2.cors 在nodejs中 下载一个 cors包
npm i cors
const cors = request('cors')
app.use(cors())
六,jq发送ajax请求
$.ajax({
type: 'get',
url: 'http://www.example.com',
data: { name: 'zhangsan', age: '20' },
contentType: 'application/x-www-form-urlencoded',
success: function (response) {},
error: function (xhr) {}
});
$.get('http://www.example.com', {name: 'zhangsan', age: 30}, function (response) {})
$.post('http://www.example.com', {name: 'lisi', age: 22}, function (response) {})
发表评论