Javascript prestashop:如果描述长度超过XXX个字符,则在产品描述处显示“阅读更多”

Javascript prestashop:如果描述长度超过XXX个字符,则在产品描述处显示“阅读更多”,javascript,php,prestashop,prestashop-1.5,Javascript,Php,Prestashop,Prestashop 1.5,你们能不能给我推荐一种方法,只有在描述中有一定数量的字符时,我才能让“阅读更多”按钮出现 {if isset($product) && $product->description } <!-- full description --> <div id="idTab1" style="overflow:hidden;height:250px;font-family:avantgarde-book;font-size:12px;line-he

你们能不能给我推荐一种方法,只有在描述中有一定数量的字符时,我才能让“阅读更多”按钮出现

{if isset($product) && $product->description }
    <!-- full description -->
    <div id="idTab1"  style="overflow:hidden;height:250px;font-family:avantgarde-book;font-size:12px;line-height:14px;">{$product->description}</div>
    <input id="button" type="button" style="margin-top:5px;font-size:12px;color:white;font-family:avantgarde-book; width:120px;background:#4e3248;border:none;height:30px;border-radius:5px;" value="Mostrar +" onclick="showMore()"> 
            <input id="button2" type="button" style="margin-top:5px;display:none;font-size:12px;color:white;font-family:avantgarde-book; width:120px;background:#4e3248;border:none;height:30px;border-radius:5px;" value="Mostrar -" onclick="showLess()">

{/if}
{if-isset($product)&&$product->description}
{$product->description}
{/if}

到目前为止,我得到了这段代码,它工作正常,但即使描述太短,按钮也会出现,因此我想使条件仅在描述长度为XXX个字符或更长时显示…

这相当容易,因为prestashop使用smarty

假设您希望将描述限制为200个字符,然后显示“阅读更多”按钮

您可以使用count_字符。以下是一个例子:

{if isset($product) && $product->description }
        {* full description *}
        <div id="idTab1"  style="overflow:hidden;height:250px;font-family:avantgarde-book;font-size:12px;line-height:14px;">{$product->description}</div>
        {if $product->description|count_characters:true > 200 }
            <input id="button" type="button" style="margin-top:5px;font-size:12px;color:white;font-family:avantgarde-book; width:120px;background:#4e3248;border:none;height:30px;border-radius:5px;" value="Mostrar +" onclick="showMore()"> 
            <input id="button2" type="button" style="margin-top:5px;display:none;font-size:12px;color:white;font-family:avantgarde-book; width:120px;background:#4e3248;border:none;height:30px;border-radius:5px;" value="Mostrar -" onclick="showLess()">
        {else}
            {* don't display anything *}
        {/if}

{/if}
{if-isset($product)&&$product->description}
{*完整描述*}
{$product->description}
{if$product->description |计数_个字符:true>200}
{else}
{*不显示任何内容*}
{/if}
{/if}
您可以从这里了解计数字符及其属性

在smarty语法中将某物显示为注释的正确方法是在这些标记{**}之间显示它

比尔的


(如果这有助于您不要忘记接受它:)

这与Java有什么关系?旁注:节省一些带宽,将内联css放入css文件可能是一个好主意。您可以使用PHP中的函数检查产品描述长度。如果超出限制,您可以使用剪切字符串并附加“阅读更多”按钮/链接。也看到