使用if来检测使用jQuery的类
using an if to detect a class using jQuery
我正在尝试将一个表单放入serializedArray中,以引入API,但我需要检测类为"image"的所有元素,并将它们放入单个数组中,而不是以与其他元素相同的方式进行检测。问题是,我不知道如何建立条件。
我目前拥有的是:
add.serializeArray().forEach(function(input) {
if(input.class === "images"){
data[images].push(input.value);
}
else{
data[input.name] = input.value;
}
});
所以我遍历了所有的输入元素,如果它们不属于这个类,我会像往常一样添加它们。
我修改了这个问题,因为在提出的解决方案中,$(this)得到了类的未定义值,input.class也得到了未定义值。我用这个方法能达到的唯一问题是名称和值(如上所示)
如果有什么不清楚的地方,很抱歉,这是我第一次使用堆栈溢出,非常感谢。
编辑:我也试着用我在w3schools上找到的serializeArray的例子来讨论它,但它似乎既不起的作用
$(document).ready(function(){
$("button").click(function(){
var x = $("form").serializeArray();
$.each(x, function(i, field){
if($(this).hasClass("images")){
$("#results").append("if is sentence is true "+field.name + ":" + field.value + " </br>");
}
else{
$("#results").append("if sentence is false "+field.name + ":" + field.value + " </br>");
}
});
});
你可以这样做,
你可以在这里看到信息
add.serializeArray().forEach(function(input) {
if($( this ).hasClass( "image" )){
data[images].push(input.value);
}
else{
data[input.name] = input.value;
}
});
最后,我用类似于java中的"contains"的东西成功地实现了这一点。我们访问input.name字符串(我无法访问其他属性),如果它包含字符串"images",我会将它们添加到数组中:
var data = { };
data["images"] = [];
add.serializeArray().forEach(function(input) {
if(input.name.indexOf("images") > -1){
data["images"].push(input.value);
}
else{
data[input.name] = input.value;
}
});
因此,我就是这样解决的,因为问题存在于没有任何类属性的元素输入中。我把它留在这里,以防有人需要!
相关文章:
- 用于多个类事件Jquery的单个函数
- 如何在javascript中找到分配给元素的类(没有jQuery)
- 使用jQuery在类的每个实例上添加随机CSS
- 使用jQuery隐藏和显示具有相同Class的类
- 如何选择使用jquery动态添加的类
- 更改:活动伪类'使用jQuery的样式
- 在jquery中更改img标记的类名
- 用jQuery扩展我的类
- 如何使用jQuery将当前月份添加为DIV的类
- 如何获取在jquery中选择的项的类
- jQuery中的类和substr
- 如何删除元素列表中的类并添加到另一个元素 Jquery.
- 绑定未来的类在 jQuery 中失败
- 使用 jquery 按类隐藏同一父级中的元素
- 获取单击的类元素 jQuery 的名称值
- 使用if来检测使用jQuery的类
- 在其他项上删除带有Jquery的类
- 获取克隆元素jquery的类
- 正在添加'活动'带有jQuery的类没有'由于特殊性,它不起作用
- 检查是否有任何祖先有使用jQuery的类