在JavaScript中以查询参数作为函数参数传递URL
我有一个URL,看起来像在JavaScript中以查询参数作为函数参数传递URL,javascript,Javascript,我有一个URL,看起来像 https://go.feeds4.com/merchants/?pid=1676&mid=4261 如何将其作为函数参数传递。我试图传递值,但无法在函数中获取任何内容 查询参数中的和是否会导致问题 HTML 我没有看到任何显示URL值的警报。请帮助。您有两个问题: 将数据放入HTML文档时,必须将其编码为HTML,而不是从HTML解码 属性值包含某些字符(如引号)时需要引用 将字符串混合在一起以生成JavaScript文本容易出错且混乱,所以您也应该避免手工操作 因此
https://go.feeds4.com/merchants/?pid=1676&mid=4261
如何将其作为函数参数传递。我试图传递值,但无法在函数中获取任何内容
查询参数中的和是否会导致问题
HTML
我没有看到任何显示URL值的警报。请帮助。您有两个问题:
将数据放入HTML文档时,必须将其编码为HTML,而不是从HTML解码
属性值包含某些字符(如引号)时需要引用
将字符串混合在一起以生成JavaScript文本容易出错且混乱,所以您也应该避免手工操作
因此:
onclick=“)”>
onclick函数不在“
下。我正在用PHP进行htmlspecialchars\u编码,因为url正在显示&;而不是&@GauravMehta-它应该显示&源代码中的code>。浏览器在解析HTML时会对其进行解码。先生,你真是个天才。谢谢你的帮助。
<a href="javascript:;"
onclick=rendernewmodal(<?php echo '"'.htmlspecialchars_decode($merchant->affiliate_link).'"'; ?>);>
<i class="fa fa-angle-right" aria-hidden="true"></i>
</a>
<a href="javascript:;"
onclick=rendernewmodal("https://go.feeds4.com/merchants/?pid=1676&mid=4261");>
function rendernewmodal(url) {
alert (url);
}
<?php
# Get the URL
$url = $merchant->affiliate_link;
# Put quotes around it and escape special characters for JS
$url_as_js_string_literal = json_encode($url);
# Put it in the rest of the JS
$js_function_call = "rendernewmodal($url_as_js_string_literal);";
# Escape special characters for HTML
$html_safe_js = htmlspecialchars($js_function_call);
?>
onclick="<?php echo $html_safe_js; ?>)">