我只是想知道如何使用这个功能:不是在我的情况下。
这是jquery。我正在尝试选择列表中不在if循环中提及的元素。
Json对象收到:[“blue”,“teleport”,“love”,“transformers”,“blink182”,“闰年”,“数据库”,“情人节”,“看跌”,“刺痛”,“ a1“,”telegraph“,”trion“,”spa“,”property“,”jolie“,”grace“,”santa claus“]
我只想收到没有特殊字符的单词
function refreshKeywords(e) {
e.preventDefault();
var refresh_form = jQuery(e.target);
alert("HELLO");
$.ajax({
url: refresh_form.attr('action'),
type: refresh_form.attr('method'),
data: refresh_form.serialize(),
dataType: 'json',
success: function(response) {
var list = response.new_list;
if (list != "["
or list != "]"
or list != "{"
or list != "}"
$('#keywords').append("<li>" + list + "</li>");
},
});
}
如果有人知道如何在我的代码中输入:not function,我将不胜感激。非常感谢你。
答案 0 :(得分:1)
这里没有选择器没有用。 :not选择器用于DOM元素。
答案 1 :(得分:1)
:not
是一个过滤器,用于过滤选择中的元素,例如:
$("input:not([type='submit'])")
这将选择页面上的所有input
元素,但类型属性等于submit
的元素除外
建议使用not()
方法代替:not
过滤器
你想做什么,做什么不行?
所以看看你的更新,你不能在if条件中使用'或'这个词,使用双管||相反,例如。
if (list != "[" || list != "]" || list != "{" || list != "}") {
$('#keywords').append("<li>" + list + "</li>");
}
除此之外,你可能想要使用&amp;&amp;相反,因为你不想要任何这些字符:
if (list != "[" && list != "]" && list != "{" && list != "}") {
$('#keywords').append("<li>" + list + "</li>");
}
但是......你可能希望在任何情况下以不同的方式做到这一点,而不是直接使用JSON字符串,你可能想要解析它以将它变成一个真正的JavaScript对象,以便你可以使用它更容易,例如
var array = $.parseJSON(response.new_list);
答案 2 :(得分:1)
json响应不是您接近它时的可读字符串。这是一个需要循环以解析vales的数组
success: function(response) {
var html='';
$.each(response, function( i, item){
html+= "<li>" + item + "</li>";
});
$('#keywords').append(html)
},
答案 3 :(得分:0)
你想要的是JSON parser。然后解析迭代结果数组。
//Cache #keywords outside the loop to make it faster.
var array = JSON.parse(response.new_list), keywords = $("#keywords");
for(var i = 0, len = array.length; i<len; i++) {
keywords.append("<li>" + array[i] + "</li>");
}