【问题标题】:Populate a Dynamic Field Dropdown List in OTRS在 OTRS 中填充动态字段下拉列表
【发布时间】:2013-07-03 09:02:31
【问题描述】:

我需要在OTRSNew Ticket 屏幕中添加一个下拉菜单。在管理部分的Dynamic Fields Management 的帮助下,我设法通过添加动态字段来添加下拉列表。
现在我的问题是我想用我在运行时从某个远程数据库获得的数据填充这个下拉列表,并依赖于用户登录。如何在 OTRS 的下拉列表中输入此动态数据?

谢谢。

【问题讨论】:

  • 我想知道我被否决了。
  • @damix 如果我知道做什么和怎么做,我就不会问问题了。

标签: perl otrs


【解决方案1】:

我认为 OTRS 提供的动态字段 UI 不支持这样做。

所以你可以:

1- 将所有可能的值添加到下拉框中,然后使用 dtl 文件中的代码更改隐藏/显示它们。 (使用 JavaScript)。 要创建新票证,可以使用 AgentTicketEmail.dtl 或 AgentTicketPhone.dtl。 如果您也想将其包含在客户界面中,还有 CustomerTicketMessage.dtl。

2- 仅添加一个值,您也可以在 dtl 文件中使用 javascript 将其隐藏,然后使用 javascript 代码将值添加到下拉列表中。 下面的示例 javascript 隐藏/显示不同的动态字段。您可以通过在浏览器中查看页面源来找到调用的动态字段。

function setdynamicviews(){     
        switch ($('#Dest').val() ) { //this is where the queue is relevant (Dest = Queue)

            case  "8\|\|Support": // need to slash escape the pipes                               
              //show dynamic fields          
              document.getElementById('LabelDynamicField_Product').style.display = 'block';                                  
              document.getElementById('LabelDynamicField_SerialNo').style.display = 'block';              
              break;        
         default:                                                             
               //hide dynamic fields.              
               document.getElementById('LabelDynamicField_Product').style.display = 'none';     
               document.getElementById('LabelDynamicField_SerialNo').style.display = 'none';              
        }   
    }   

要添加项目以使用 javascript,请参阅 here

Yu 没有为我提供足够的信息来帮助我“从某个遥远的数据库”获取信息

注意:如果您确实更改了任何 DTL 文件或其他 otrs 文件,您应该首先创建一个主题,请参阅 here

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2016-10-05
    • 1970-01-01
    • 2019-04-08
    • 2016-10-17
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 2020-06-26
    相关资源
    最近更新 更多