如何在jQuery中为字母和变量的组合分配一个id?

时间:2011-10-09 21:36:20

标签: jquery

我想指定一个带有字母和变量组合的id。 这是示例代码

$("#q1").append("<p id='q' + '"+ questionCount +"'>Question: " + questionCount + "<input type='text'>\
<button type='button' class='buttonMinus' id='"+ questionCount +"'></button></p>");

questionCount是一个变量。 我只能为每个<p id>分配'q',而不包含questionCount的值,而我可以将questionCount的值分配给<button id>。我尝试了几种格式,但它们仍然无法正常工作。这让我很困惑。

由于 阿什利

2 个答案:

答案 0 :(得分:3)

"<p id='q' + '"+ questionCount +"'>Question: "应该是 "<p id='q"+ questionCount +"'>Question: "

在您的代码中,您要将元素的ID设置为q,将(不需要的?)属性设置为等于questionCount的值。

<强>解释
questionCount9001,对于此示例
解析代码的第一部分时,将执行以下字符串操作:

  • 创建 <p id='q' + '
  • 添加 questionCount
    <p id='q' + '13' (结果)
  • 添加 '>Question:
    <p id='q' + '13'> (结果)

您不能使用+来连接HTML中的属性值。自+'13'以来,您的浏览器是无效的HTML属性,它们会被忽略。因此,最后的第一部分是:<p id='q'>

答案 1 :(得分:0)

看起来你的单引号不合适

$("#q1").append("<p id='q" + questionCount +"'>Question: " + questionCount + "<input type='text'>\
<button type='button' class='buttonMinus' id='"+ questionCount +"'></button></p>");