【问题标题】:jquery, appending using a variable with spacesjquery,使用带空格的变量附加
【发布时间】:2014-06-05 18:52:52
【问题描述】:

我正在存储和使用一个变量来附加一个值(使用 jquery)。问题是,如果变量中存储的名称中有任何空格,它只会附加第一个单词。例如,如果我将值“New Title”存储在变量中,它只会将值设置为“New”。有趣的是title肯定是存储的,它只是超出了像这样的值的引用

我的代码是这样的

//store name from input
var appName = $(".appNameInput").val();

//much lower in the code append using the stored value
$(".adminLeftTable").append("<input type='radio' name='checkAppNm' value= " + appName + ">");

【问题讨论】:

  • 您是否在调试器中查看过值是否设置正确?
  • 你能创建一个 jsFiddle.net 示例来显示问题吗?
  • 该值存储得很好,问题是 value= " + appName ,正在关闭第一项周围的引号 - 所以如果我存储“新标题”,它会像 value="new " 标题。

标签: jquery variables append


【解决方案1】:

值周围缺少分隔符:

$(".adminLeftTable").append("<input type='radio' name='checkAppNm' value='" + appName + "'>");

【讨论】:

    【解决方案2】:

    像这样添加' 引用包装器:

    $(".adminLeftTable").append("<input type='radio' name='checkAppNm' value='" + appName + "'>");
    //-------------------------here------------------------------------------^---------------^
    

    因此,如果您的值是 New Title,那么只有第一个单词会被指定为值,要克服这个问题,您必须根据代码要求添加 ' 单引号。

    【讨论】:

      【解决方案3】:

      这是因为您没有将 appName 值括在引号中。您的代码正在生成

      <input type='radio' name='checkAppNm' value=New Title>
      

      什么时候需要生成

          <input type='radio' name='checkAppNm' value='New Title'>
      

      【讨论】:

        猜你喜欢
        • 2021-02-28
        • 1970-01-01
        • 2010-12-02
        • 1970-01-01
        • 1970-01-01
        • 2014-07-18
        • 2011-08-14
        • 1970-01-01
        • 2012-10-23
        相关资源
        最近更新 更多