jQuery追加中没有变量?

时间:2018-08-27 09:38:23

标签: javascript jquery append

我正在做一个项目,我必须在列表中添加电子邮件。我的代码如下:

HTML:

<ul class="auto-reports_recipients-list">
  <!-- List over recipients of the auto reports goes here -->
</ul>

<input type="email" placeholder="Enter email" class="auto-reports_recipient-email">
<button type="submit" class="auto-reports_recipient-email_button">+</button>

JavaScript:

if ($.inArray(email, recipientsEmailCollection) == -1) {
    recipientsEmailCollection.push(email);

    recipientsList.append('<li class="auto-reports_recipient">' + email);
    recipientsList.append('<button class="auto-reports_recipient-button" id="' + email + '>-</button></li>');

} else {
    // Output error message to tell that the input already is on the email list
    console.log(email + " already exists in array.");
}

一切正常(包括JavaScript中第4行的email变量值)。但是,当我要将电子邮件变量值附加到第5行的按钮ID时,它中断并告诉我,电子邮件变量未定义。

我想念什么吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

此代码段不正确。没有右引号,也没有不平衡标记。

您可以使用反引号使用模板文字

if ($.inArray(email, recipientsEmailCollection) == -1) {
  recipientsEmailCollection.push(email);
  console.log(email) // test t o check the email
  recipientsList.append(`<li class="auto-reports_recipient">${email}
                          <button class="auto-reports_recipient-button" id="${email}">-</button>
                          </li>`);

} else {
  console.log(email + " already exists in array.");
}