在jquery选择器中使用javascript变量

时间:2016-08-10 18:41:16

标签: javascript jquery

我有<form>这个输入......

Term ID: <input type="text" name="data_array[0][term_id]" size="5" value="' . $highest_term_id . '">

其中$highest_term_id由PHP设置。

我正在尝试使用jquery来增加“data_array [0]”部分......

$("input[data_array[" + index + "][term_id]").val((index + 1));

但是我收到了这个错误:

  

错误:语法错误,无法识别的表达式:   输入[data_array中[未定义] [term_id]“

脚本中有点高var index = 0;;

为什么会失败的任何想法?

1 个答案:

答案 0 :(得分:1)

方括号在jQuery选择器中有特殊含义 - 你必须逃避它们 - 应该是这样的:

$("input[name=data_array\\[" + index + "\\]\\[term_id\\]]").val((index + 1));

如果可能的话,我会尝试避免使用这种命名约定,或者尝试找到一种替代名称的方法 - 正如您所看到的,在引用它时很难保持括号和反斜杠。