【问题标题】:How to form variable string with HTML and corresponding quotations如何用 HTML 和相应的引号形成变量字符串
【发布时间】:2015-04-11 04:20:18
【问题描述】:

我正在使用 HTML 和 JSON 文件中的变量构建文本字符串。问题是 HTML 中的引号与 js 表达式中的引号冲突 - 特别是当我尝试从 URL 部分字符串 + json 变量构建 URL 时。

这是我的代码。有什么帮助吗?

output += '<li><span><a>' +
          jobs[i].title +
          '</a></span><span>' +
          jobs[i].city +
          '</span><span><a href='http://user.theresumator.com/apply/'' +
          jobs[i].board_code +
          '><button>More Info ›</button></a></span></li>';
}

我想要的结果是这样的:

<li><span><a>Social Impact Strategist (Los Angeles or New York)</a></span><span></span><span><a href="http://user.theresumator.com/apply/iefjlt"><button>More Info ›</button></a></span></li>

【问题讨论】:

  • 使用\' 转义它们或使用" 而不是'
  • 改用document.createElement,问题解决了

标签: javascript json syntax


【解决方案1】:

\转义你的引号:

output += '<li><span><a>' +
      jobs[i].title +
      '</a></span><span>' +
      jobs[i].city +
      '</span><span><a href=\'http://user.theresumator.com/apply/' +
      jobs[i].board_code +
      '\'><button>More Info ›</button></a></span></li>';
}

或使用双引号":

output += '<li><span><a>' +
      jobs[i].title +
      '</a></span><span>' +
      jobs[i].city +
      '</span><span><a href="http://user.theresumator.com/apply/' +
      jobs[i].board_code +
      '"><button>More Info ›</button></a></span></li>';
}

第二个将用双引号完美匹配您想要的结果。

【讨论】:

  • 谢谢!不确定我是否理解“逃生”方法,但我会调查一下。不幸的是,您显示的代码输出了这个不正确的字符串:user.theresumator.com/apply" iefjlt="">
  • 如果输出不正确,您应该修复您的代码。引号问题已解决。
【解决方案2】:

这是工作代码!我在单独的一行中将其分开,并在单引号中添加了双引号。

output += '<li><span><a>' +
  jobs[i].title +
  '</a></span><span>' +
  jobs[i].city +
  '</span><span><a href=' +
  '"http://user.theresumator.com/apply/' +
  jobs[i].board_code + 
  '"' +
  '><button>More Info ›</button></a></span></li>';
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-06
    • 2021-09-08
    相关资源
    最近更新 更多