gpt4 book ai didi

javascript - 获取 jQuery 无法识别的表达式错误

转载 作者:行者123 更新时间:2023-11-30 20:36:42 28 4
gpt4 key购买 nike

我有一个 HTML 模板,其中包含一个 jQuery 函数,该函数向我的 Web 服务器执行 Ajax 请求。响应中的数据包含带有汽车品牌名称和数字的字符串,用于在每个特定汽车品牌的输入复选框中设置值。这是模板中的示例:

<input type="checkbox" name="list" value="2">
<label for="brand">Mercedes</label>

我正在尝试使用以下 jQuery 代码来查看是否为每个汽车品牌选中了输入复选框。 index.name 是一个字符串,包含汽车品牌(例如“Mercedes”),index.id 包含值 2,它是一个 JavaScript 数字类型(我在控制台中确认了这一点):

$.each(data, function(key, index) {
if ( $('input[type=checkbox][value=index.id]').prop('checked', true) ) {
console.log("Checkbox is checked");
}
});

当我运行 jQuery 代码时,出现此错误:

    Uncaught Error: Syntax error, unrecognized expression: input[type=checkbox][value=index.id]

谁能告诉我我做错了什么?我已经阅读了有关如何执行此操作的其他 Stackoverflow 问题,并且我所做的似乎是正确的。

最佳答案

如果参数包含任何特殊字符(在本例中为 . 字符),则需要将参数引用到属性选择器:

 $('input[type=checkbox][value="index.id"]')

但是,这将查找一个复选框,其值为文字字符串 index.id。如果您实际上正在尝试使用表达式 index.id 的值,则两种方法都不会这样做,因为变量不会在字符串内部展开。您需要连接:

$('input[type=checkbox][value="' + index.id+ '"]')

或者使用 ES6 模板文字:

$(`input[type=checkbox][value="${index.id}"]`)

关于javascript - 获取 jQuery 无法识别的表达式错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49759744/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com