在JQuery中执行JavaScript.replace
我将如何在jQuery中执行以下操作在JQuery中执行JavaScript.replace,javascript,jquery,string,replace,Javascript,Jquery,String,Replace,我将如何在jQuery中执行以下操作 var elmOperator = document.getElementById(elm.id.replace('Include', 'Operator')); 正在操作的ID看起来像标准[0]。包括。我正在尝试为相关的ID创建一个变量,它是标准[0]。运算符假设elm是一个jQuery对象,而不是DOM对象,则可以执行以下操作: var elmOperator = $("#" + elm.attr('id').replace('Include', 'O
var elmOperator = document.getElementById(elm.id.replace('Include', 'Operator'));
正在操作的
ID
看起来像标准[0]。包括。我正在尝试为相关的ID
创建一个变量,它是标准[0]。运算符假设elm是一个jQuery对象,而不是DOM对象,则可以执行以下操作:
var elmOperator = $("#" + elm.attr('id').replace('Include', 'Operator'));
如果它是一个DOM对象,您可以这样做(这会稍微快一点):
更大的问题是你为什么要这么做。如果您不了解和attr()
,那么您的页面在任何地方都使用jQuery吗?您仍然可以在jQuery中使用旧的javascript,因此对于您的示例,它是这样的:
var operators = $('[id*=Include]').map(function() {
return $('#' + $(this).get(0).id.replace('Include', 'Operator'));
});
operators.css('background', 'red');
在这个示例中,我们选择所有的Include元素,然后执行元素到新操作符元素数组的1:1映射,最后我们将所有操作符背景设置为红色。在第二个示例中,如果您已经有一个DOM元素,我不会将其转换为jQuery对象。这需要更多的开销和更多的输入来引导。比较:“$(elm.attr('id')”与“elm.id”
var operators = $('[id*=Include]').map(function() {
return $('#' + $(this).get(0).id.replace('Include', 'Operator'));
});
operators.css('background', 'red');