我正在开发一个Web应用程序,我必须在JavaScript端编码和解码字符串以及代码的Ruby后端.唯一的问题是JavaScript和Ruby的转义方法有很小的区别.在JavaScript中" "被视为"%20"但在ruby中" "被编码为"+".
有办法解决这个问题吗?在原始URL编码中编码字符串的另一种Ruby方法?
经过一些Selenium测试后,我注意到由于某种原因URI.unescape混合了"£"和之间的混合"?".如果我encodeURIComponent("£");在JavaScript中使用然后URI.unescape("%C2%A3")在Ruby中使用,这是我们编码"£"符号时得到的值,我会"?"返回符号.有解决方案吗
我遇到了一个问题,即我只从服务器端获取一瓶字符串。我将该字符串分配给数据属性,例如
var uom = serverSideValue // Contains ["one bottle only"]
<div class="uomClass" data-uom="+ JSON.stringify(uom) +"></div>
Run Code Online (Sandbox Code Playgroud)
但是当我在开发人员工具中检查该元素时,它看起来像
data-uom="["one" only"]
Run Code Online (Sandbox Code Playgroud)
如果不是 JSON.stringify
data-uom="one" only
Run Code Online (Sandbox Code Playgroud)
当我尝试访问 uom 时,如下所示
$('.uomClass').data('uom')
Run Code Online (Sandbox Code Playgroud)
上面的代码行仅给出一个而不是一个水瓶的结果
我在这里做错了什么。我正在动态构建上面的 uom html。请引导我走正确的路。谢谢。