将十六进制参数传递给 jQuery 函数并显示为十六进制——而非 ASCII
Pass a hex parameter to jQuery function and display as hex--not ASCII
我有一个采用十六进制参数的 jQuery 函数。传递的十六进制参数如下所示:
\x73\x70\x65\x63\x74\x61\x74\x6f\x72\x20
使用 HTML 时,我可以像上面显示的那样显示它。将它传递给 jQuery 函数后,我尝试像这样显示它:
$('#divid').text("This should be hex: '" + HEXparam + "' That should have been hex.'");
但是,它不显示 HEX,而是显示 ASCII/English 翻译(在上述情况下,显示 "spectator" 一词)。有什么办法可以防止这种情况吗?
在调用 $('#divid').text()
:
之前,您需要对字符串中的斜线进行转义
HEXparam = HEXparam.replace('\', '\\');
注意上面代码中的双斜杠,这是因为第一个 \
转义了后面的 \
,导致其中两个 (\
) 的组合为被解释为文字“\”。
我有一个采用十六进制参数的 jQuery 函数。传递的十六进制参数如下所示:
\x73\x70\x65\x63\x74\x61\x74\x6f\x72\x20
使用 HTML 时,我可以像上面显示的那样显示它。将它传递给 jQuery 函数后,我尝试像这样显示它:
$('#divid').text("This should be hex: '" + HEXparam + "' That should have been hex.'");
但是,它不显示 HEX,而是显示 ASCII/English 翻译(在上述情况下,显示 "spectator" 一词)。有什么办法可以防止这种情况吗?
在调用 $('#divid').text()
:
HEXparam = HEXparam.replace('\', '\\');
注意上面代码中的双斜杠,这是因为第一个 \
转义了后面的 \
,导致其中两个 (\
) 的组合为被解释为文字“\”。