带有@Inlines 的多个 IF 条件

Multiple IF conditionals with @Inlines

我想修改(或使用不同的函数)下面的 xdoxslt 代码以允许 If 有多个值,这样如果 A.DESCR1 等于 'General Hospital' 'Main Hospital' 然后 输出'two', 否则 (否则)输出 'one'。我需要它来处理内联文本,如下所示。

<?xdoxslt:ifelse(A.DESCR1 = 'General Hospital', 'two', 'one')?>

以下似乎对我有用:

<?choose@inlines:?>
<?when@inlines:A.DESCR1='General Hospital'?>two<?end when?>
<?when@inlines:A.DESCR1='Main Hospital'?>two<?end when?>
<?otherwise@inlines:?>one<?end otherwise?>
<?end choose?>

虽然您的解决方案有效,但我想指出您可以将 or 语句放在 ifelse 条件中。

ifelse 语法: <?xdoxslt:ifelse(condition,true,false)?>


其中 conditionA.DESCR1='General Hospital' or A.DESCR1='Main Hospital'

<?xdoxslt:ifelse(A.DESCR1='General Hospital' or A.DESCR1='Main Hospital', 'two', 'one')?>


您甚至可以将一个 ifelse 函数嵌套在另一个 ifelse 函数中:

嵌套 ifelse 语法: <?xdoxslt:ifelse(condition1,true1,xdoxslt:ifelse(condition2,true2,false))?>

<?xdoxslt:ifelse(A.DESCR1='General Hospital', 'two', xdoxslt:ifelse(A.DESCR1='Main Hospital', 'two', 'one'))?>