javascript - 动态 JQuery 对象选择器
问题描述
我有一个 jquery 选择器,用于在由第三方创建的某些插件代码中选择一个对象。当我对一个搜索项进行硬编码时,它可以工作,但是当我尝试使用变量来调整搜索时,找不到该对象。
第 3 方代码不包括所有 CSS 代码的 id 句柄。因此有必要搜索字符串,在这种情况下是标签和标签内的关联值。
我搜索了互联网并尝试了各种似乎对其他人有用的样本,但没有成功。
有效的搜索是这样的:
var $box = $('label[for="MMDListsRecord_0_title"]');
$box.text('<?php echo $NewLabel ?>');
但是当我打破搜索线时,为了动态选择一行,搜索失败。我已经尝试了所有这些组合:
var $row = 0;
var $box = 'label[for="MMDListsRecord_'+ $row +'_title"]';
$box.text('<?php echo $NewLabel ?>');
var row = 0;
var $x = 'label[for="MMDListsRecord_'+ row +'_title"]';
var $box = $(x);
$box.text('<?php echo $NewLabel ?>');
var $row = 0;
var $box = $('label[for="MMDListsRecord_'+ $row +'_title"]');
$box.text('<?php echo $NewLabel ?>');
var $row = '0';
var $box = $('label[for="MMDListsRecord_'+ $row +'_title"]');
$box.text('<?php echo $NewLabel ?>');
var $row = "0";
var $box = $('label[for="MMDListsRecord_'+ $row +'_title"]');
$box.text('<?php echo $NewLabel ?>');
然后去尝试只搜索标题的所有组合,结果jquery搜索崩溃或失败。
var $box = $("label[for=~'title");
$box.text('<?php echo $NewLabel ?>');
var $box = $('label[for=~"_title"]');
$box.text('<?php echo $NewLabel ?>');
var $box = $("[for~='_title'");
$box.text('<?php echo $NewLabel ?>');
所有组合都找不到代码对象,整个字符串除外
var $box = $('label[for="MMDListsRecord_0_title"]');
秘诀是什么?
解决方案
您已定义$row
变量,但已使用row
- 它未定义。
https://jsfiddle.net/s4cyqku6/
推荐阅读
- c# - 如何修复 C# 中的“类字段从未分配给”错误
- processing - 用3个随机点制作一个圆圈并将它们连接在一起形成一个三角形
- javascript - 围绕 Paypal Downshift 创建一个 Kotlin React Wrapper
- web-scraping - - 在 mac 上运行 chromedriver 时出错 - 不是有效的标识符 - IPv4 端口不可用
- ios - 如何在一行内垂直对齐两个 UILabel?
- python - 尝试检测圆心颜色时出错
- c# - Paypal API:获取订单列表
- progressive-web-apps - 如何在 GoogleSite 上添加更多支持 PWA
- mysql - auto_increment 没有设置主键的值?
- function - imagejpeg 功能不可用