<xsl:key name="item" match="SHOPITEM" use="substring-before(PRODUCT, ' ')" />
您好,我正在使用这部分代码来通过第一个单词来验证元素,但这还不够。 我必须添加一些条件,例如:
如果包含(PRODUCT,“ SIZE。”),然后在substring-before(PRODUCT,'SIZE。') 否则将获得PRODUCT的全部价值
是否可以将“ if”放入“使用”中或其他任何方式?
答案 0 :(得分:2)
在XSLT 1.0中,您可以使用称为Oliver Becker's method的技术,这意味着以这种形式编写$('#paginator').on('click', 'a', function(e) {
e.preventDefault();
var pageno = $(this).attr('data-ci-pagination-page');
$.ajax({
data : { 'pageno' : pageno },
method : 'post',
// dataType : 'json',
url : base_url + 'posts/index',
success : function(response) {
$("#main_container").html(response);
}
});
use
因此,就您而言,您可以这样编写concat(
substring(Str1,1 div Cond),
substring(Str2,1 div not(Cond))
)
:
xsl:key
您是否认为此可读性是另一回事。
但是,在这种特殊情况下,对于您要实现的逻辑,也可以这样编写键:
<xsl:key name="item2" match="SHOPITEM" use="concat(
substring(substring-before(PRODUCT, ' SIZE.'), 1 div (contains(PRODUCT, ' SIZE.'))),
substring(PRODUCT, 1 div (not(contains(PRODUCT, ' SIZE.'))))
)" />
因此,如果 <xsl:key name="item" match="SHOPITEM" use="substring-before(concat(PRODUCT, ' SIZE.'), ' SIZE.')" />
包含PRODUCT
,它将在第一次出现之前找到文本。如果没有,它将连接SIZE.
,从而有效地获取整个字符串