常见问题
1.jquery.min.js:5 POST http://localhost:8080/url 415 (Unsupported Media Type) 如何处理?
$.ajax({
url: "/url",
type: "json",
<!--参数对象转换为json格式-->
data: JSON.stringify(paramObject),
<!--添加这个参数解决问题-->
contentType: "application/json",
method: "post",
success: function(json){
……
}
});
2.jQuery中ajax配置项中的使用type与method的区别?
本质上两个配置项是没有区别的,区别在于两者出现的时间不同,type对于目前jQuery的版本全部兼容
$.ajax({
<!--这种方式书写,type类型是GET就是GET请求,是POST请求就是POST请求-->
<!--一定要把请求方式写到传输数据data的前面,否则有可能报415媒体类型不支持-->
type: 'POST',
url: '/url',
dataType: 'json',
data: dataObject,
success: function() {
...
},
error: function() {
...
}
});
# 在jQuery1.9以后的版本中使用ajax时,可以使用如下方式
$.ajax({
<!--这里不同了,实现的功能是一样的,但是如果此时你引入的jQuery的js文件版本太旧,
就会出现请求全是以默认方式GET进行的, 所以会出现一些无厘头的bug -->
method: 'POST',
url: '/url',
data: dataObject
success: function() {
...
},
error: function() {
...
}
});
4.如何获取表格的第一行第一列和最后一行第一列的信息
# 获取最后一行第一列的内容
$('#privacy-operation-mark-table tr:last').find('td:first').text();
# 获取第一行第一列的内容
$('#privacy-operation-mark-table tr:eq(1)').find('td:first').text();
5.监控页面内下拉框改变
/**
* 识别下拉框修改作出相应操作
*/
$('#privacyphone-greys-show-div').on('change', 'select', function() {
// 根据class类进行筛选,
if ($(this).hasClass("select-tr-th")) {
...
<!--清空控制台-->
console.clear();
...
}
});
6.动态获取下拉框改变的选项
<!--problem_reason为下拉框-->
$('#problem_reason').find("option:selected").text();
<!--处理同一类型的下拉框的ID和值的映射关系-->
<!--声明映射关系-->
var global_select_condition_map = {
"supplier-select": "",
"operation-type-select": "",
"operator-select": ""
};
$.each($('.select-tr-th'), function(index, obj) {
global_select_condition_map[obj.id] = obj.value;
});
7.JS的array数据删除对应索引上的值
var array = [1,2,3,4,4,5]
array.splice(i, 1);
8.动态设置下拉框的option为选中状态
<!--把下拉框设置成对应的值-->
$('#select_id').val(value);
9.获取table的tr数量
let curDisplayRows = $("table tr").length;