ej2 synfusion ASP.NET条件列模板(如果条件不适用于按钮)

00jrzges  于 5个月前  发布在  .NET
关注(0)|答案(1)|浏览(77)
<script>
    const email = '[email protected]';
    const email1 = '[email protected]';
    const comparison = email.localeCompare(email1, undefined, { sensitivity: 'base' });
</script>

<script id="edit" type="text/x-template">
    ${if(comparison === 0)}
        <span onclick="EditDetails(this)" id="editBtn"><i class="fas fa-edit fa-lg"></i></span>
    ${/if}
</script>

字符串
我有上面显示的这段代码,我想在列模板条件中比较两个值和比较的结果,但它不起作用。我在这里做错了吗?
我尝试了这段代码,我希望它只在满足if条件时才呈现span标记。

wwtsj6pe

wwtsj6pe1#

您正在模板脚本中使用JavaScript样式的条件(${if(comparison === 0)}),这不是在ASP.NET中或使用Syncfusion模板处理条件的标准方式。ASP.NET和Syncfusion对其模板使用不同的语法。
如果你正在处理客户端JavaScript和Syncfusion的JavaScript库,你应该遵循他们的API进行条件渲染。这可能涉及到使用一个函数,根据条件返回适当的HTML。

function getEditButton(email, email1) {
    const comparison = email.localeCompare(email1, undefined, { sensitivity: 'base' });
    if (comparison === 0) {
        return '<span onclick="EditDetails(this)" id="editBtn"><i class="fas fa-edit fa-lg"></i></span>';
    }
    return ''; 
}

字符串
然后,在列模板中,调用getEditButton(email, email1)以根据条件获取适当的HTML。
对于服务器端方法,您需要在C#代码中处理此逻辑,然后在Razor视图中呈现相应的HTML。

相关问题