如何更改以下变量,以便在其中引入另一个变量。
下面的代码正在运行:
$("tbody").on("change", "input", function (ev)
{
console.log(this.name, this.value, ev.target.className);
var checked = $('.capex_opex_1:checked')
var in_checked = $('input.capex_opex_1')
if (checked.length > 1) {
in_checked.not(this).prop('checked', false).checkboxradio('refresh');}
});
然而,当我在下面的代码中的 var checked 或 var in_checked 中引入变量时,我在底部得到错误
var checked = "$('." + ev.target.className + ":checked')"
var in_checked = "$('input." + ev.target.className + "')"
if (checked.length > 1) {
in_checked.not(this).prop('checked', false).checkboxradio('refresh');}
错误:
RPC:654 Uncaught TypeError:in_checked.not不是函数 在HTMLInputElement。 (RPC:654) 在HTMLTableSectionElement.dispatch(jquery-2.2.4.js:4737) 在HTMLTableSectionElement.elemData.handle(jquery-2.2.4.js:4549) at Object.trigger(jquery-2.2.4.js:7807) 在HTMLInputElement。 (jquery的-2.2.4.js:7875) 在Function.each(jquery-2.2.4.js:365) 在jQuery.fn.init.each(jquery-2.2.4.js:137) 在jQuery.fn.init.trigger(jquery-2.2.4.js:7874) 在HTMLInputElement。 (jquery.mobile-1.4.5.min.js:5) 在Function.each(jquery-2.2.4.js:365)
答案 0 :(得分:3)
不要用双引号括起来,否则你有效地转换为字符串,jQuery选择器将无法工作。适当地打开和关闭单引号。
试试这个:
var checked = $('.' + ev.target.className + ':checked');
var in_checked = $('input.' + ev.target.className);