如何将 Javascript 变量值显示到 HTML href 标签

How to display Javascript Variable value to HTML href tag

本文关键字:HTML href 标签 显示 变量值 Javascript      更新时间:2023-09-26

我正在重写传递给URL的URL和类别名称。现在我正在使用JS函数创建URL友好字符串是:

function getUrlFriendlyString(str)
{
   // convert spaces to '-'
   //alert(str);
   str = str.replace(/ /g, "-");
   // Make lowercase
   str = str.toLowerCase();
   // Remove characters that are not alphanumeric or a '-'
   str = str.replace(/[^a-z0-9-]/g, "");
   // Combine multiple dashes (i.e., '---') into one dash '-'.
   str = str.replace(/[-]+/g, "-");
   return str;
}

现在在 HTML 页面上,这个 JS 函数在 JS 中给出一个字符串值,例如

<? $cat_name= 'Personalized Chocolates / Gift'; ?>
<script>var url=getUrlFriendlyString("<?=$cat_name;?>");</script>

我想像这样在 HTML 标记 href 中传递 var url

<a  href="<?PHP echo SITE_URL;?>/category/<script>document.write(url);</script>/<?=$data_2['cat_id'];?>"

<script>document.write(url);</script>

没有给出他们的价值和即将到来的 URL 就是这样

http://localhost/ecom/category/<script>document.writeln(url);</script>/105

必需的网址为

http://localhost/ecom/category/personalized-chocolates-gift/105

知道如何使用 JS 字符串显示正确的 URL 吗?

我可以在PHP变量中保存var url

不能在属性值的中间包含元素(如 <script>...</script> )。

如果你打算采用这种方法,那么你需要使用 JavaScript 写出整个锚元素。

另一种方法是在 HTML 中设置默认值,然后在元素完成后出现的脚本中使用 DOM 访问该元素。

更好的方法是用 PHP 重写 getUrlFriendlyString 函数并在您的服务器上运行它。

这对

我有用

您可以在 PHP 变量中获取 var url 值并在您的 href 标签中使用

<? $cat_name= 'Personalized Chocolates / Gift'; ?>
<script>var url=getUrlFriendlyString("<?=$cat_name;?>");</script>

<?php
        $m="<script>document.write(url);</script>";
        echo $m; // output is : personalized-chocolates-gift
   ?>

这不会在 href 中为您提供相同的 o/p,会为您提供 js 代码的 o/p $m因为内部保存了 js 代码并且 href 不会将 js 转换为字符串 o/p

我希望这对你有用:)

可能有助于您在HTML代码中使用JS,redirectTo() JS函数

<a onclick="redirectTo();">click here</a>