如何从请求表单中禁用主题和描述字段?

回到顶端

158条评论

  • 科里·卡茨

    有没有办法也隐藏CC字段和附加文件部分?我玩了下面的代码,但它似乎没有删除CC和附加文件,只是主题和描述:

    var ticketForm = location.search.split('ticket_form_id=')[1];

    if(ticketForm == 360001296612) {
    $ (' .form-field.request_subject ') hide ();//隐藏主题
    $ (' .form-field.request_description ') hide ();//隐藏描述
    $ (' .form-field.request_collaborators_ ') hide ();//隐藏cc
    $ (' .form-field.request-attachments ') hide ();//隐藏附件上传
    $ (" # request_subject”)。val('新的更新票据表单请求');//自动填充主题
    $ (" # request_description”)。val('在左侧字段中查看详细信息');//自动填充描述

    0
  • 特拉维斯骑手

    嘿科里!

    为了隐藏CC字段,我使用了以下方法:

    $('.form-field.string.optional.request_cc_email ').hide()
    1
  • 科里·卡茨

    @……成功了,谢谢!

    我也能够隐藏附件上传部分如下:

    $('。表单字段标签:包含(“附件”))hide ();//隐藏附件标签
    $ (' # upload-dropzone ') hide ();//隐藏附件的上传框

    1
  • 约翰Wilmsmann

    我努力设置描述字段的值,想知道是否有人有类似的经历:

    美元(文档)。Ready (function () {
    //隐藏主题和描述
    const ticketForm = $("#request_issue_type_select").val();

    if (ticketForm == 360001444300) {
    $ (' .form-field.string.required.request_subject ') hide ();//隐藏主题
    $ (' .form-field.request_description ') hide ();//隐藏描述
    $ (" # request_subject”)。瓦尔(实验对象);//自动填充主题
    $ (" # request_description”)。瓦尔(测试描述);//自动填充描述

    });

    使用这段代码,我能够隐藏主题和描述字段,但是当提交表单时,它失败了。删除隐藏字段的部分,我可以看到“Test subject”被输入到主题字段中,但是description字段是空的。我还可以看到,提交失败的原因是因为description字段为空。

    有人有什么建议吗?

    3.
  • 科里·卡茨

    @……-

    你的代码看起来不错。我使用下面的方法,它对我很有效:

    $ (" # request_description”)。val('在左侧字段中查看详细信息');//自动填充描述

    您是否使用了描述值?也许它需要比几个字更长的时间,尽管我怀疑,因为我收到的门票在描述中只有一个句号。

    0
  • Kuldeep Patidar

    嘿,大家好!

    我相信在任何一篇文章中都没有问过这个问题。

    我们已经成功地能够隐藏主题和描述字段在HC使用这段代码。

    尝试{
    //填写新请求表单的默认值并隐藏附件区域
    // style.css文件中第4588-4591行相关的CSS
    输入# request_subject document.querySelector(“”)。value = '产品更新请求';
    textarea # request_description document.querySelector(“”)。innerText = '产品更新请求';
    document.querySelector .parentElement.style(“div # upload-dropzone.upload-dropzone”)。Display = 'none';
    } catch(e){/*不在新请求页,这是好的*/}

    因为,我已经将默认的主题文本传递为“产品更新请求”,所以每当客户提交表单时,都会在Zendesk中使用Subject -创建一个票据亚博产品更新请求。(附截图)

    但是,我想自定义票据主题,使其如下所示:

    雇主名称-广告号(这些是表单中已经可用的用户字段)。这将是队列中的主题。

    另外,我们是否可以将表单响应复制到票据中,这样我就可以在那里阅读它,而不是只看左边的字段?

    目前,Zendesk中的票据本身并没有显示表单,它仍然只在描述亚博中显示“产品更新请求”。

    有人能帮帮我吗?

    Kuldeep

    0
  • 山姆
    社区的主持人

    @……我们使用JSON和一个HTTP目标在创建票据时填充此信息。请注意,Zendesk本身不支持使用Ze亚博ndesk通过API更新Zendesk票据。要做到这一点:

    1.用以下值创建一个HTTP目标:

    • 在“Admin -> Settings -> Extensions”下,选择“Add Target”
    • 选择HTTP目标
    • 为目标提供一个名称(如Ticket ID API更新)
    • 使用https://yourdomain.亚博zendesk.com/api/v2/tickets/ {{ticket.id}} . json(将“你的域名”替换为你的Zendesk子域名)亚博
    • 方法:将
    • 内容类型:JSON
    • 基本认证:启用
    • 用户名:您的管理电子邮件地址/令牌(例如:jsmith@yahoo.com/令牌)
    • 密码:你的API令牌(需要一个令牌?点击Admin ->通道-> API ->设置,选择“添加令牌”)
    • 测试,然后保存你的目标

    1.用以下信息创建一个Webhook目标:

    2.创建一个触发器,在票据创建时通知HTTP目标

    • 设置一个正常的触发器,比如Ticket = Created和Form = XYZ(或任何使触发器为真的值)
    • 在“添加操作”下,选择“通知目标”
    • 如果使用Webhook,请选择Notify Active Webhook
    • 选择新创建的HTTP目标
    • 在JSON主体下,使用以下模板:

    “票”:{
    "subject": "你的文本在这里-{{票。ticket_field_12345}},
    {{ticket.ticket_field_option_title_12345}}”

    • 在“subject”之后:将示例文本或票据字段模板替换为您想要的主题。我们假设Employer ID文本字段ID是12345,而AdvertiserID是67890。

    “票”:{
    "subject": "产品更新请求- {{ticket. "ticket_field_12345}},
    {{ticket.ticket_field_67890}}”

    以上将根据您的截图将您的门票设置为“产品更新请求- Testing1 - 123456”。

    如果您需要下拉值,请参考样例代码的第一个块—您将需要{{ticket。Ticket_field_option_title_12345}}获取值title。

    希望这能有所帮助!

    1
  • 布兰登Tidd
    社区的主持人
    谦逊奖——2021年

    @……-

    基于来自@……,您可以使用相同的方法将票据字段复制到描述中。


    “票”:{
    "subject": "产品更新请求- {{ticket. "ticket_field_12345}},
    {{ticket.ticket_field_67890}}”,
    注释":{"public": false, "body": "My Field: {{ticket.ticket_field_67890}}"}}

    希望这能有所帮助!

    1
  • Kuldeep Patidar

    伟大的技巧!

    谢谢你的帮助塞缪尔•莫舍布兰登Tidd,它起作用了。:)

    实际上,我对它进行了定制,以附加到票据主体中。这允许我们在单独的一行中作为Private注释显示票据表单响应。

    如果有人感兴趣,这是JSON:

    {"ticket": {"subject": "{{ticket. "Ticket_field_360042711552}} - {{ticket.ticket_field_360042711572}}",

    "comment": {"public": false, "body": "Name: {{ticket. "\n分段:{{ticket.ticket_field_360042710431}}"}}}

    0
  • 帕特里克·贝尔纳迪

    我一直试图在script.js文件中编程,以请求优先级字段的值,但它不与我尝试的任何东西一起工作。

    一直在

    var strPriority = $('#request_subject').val();

    var strPriority = $('#request_ticket_field_1260806778829').val();

    什么好主意吗?

    0
  • 肯德尔克莱顿

    你好!我试图在两个字段的响应基础上填充一个主题行。第一个字段工作得很好,因为它是一个下拉列表,但我也想自动填充第二个字段,即文本,以便主题读起来像这样:

    表单名称:客户帐号“文本”的“自定义下拉列表”

    1500004202322是自定义下拉字段吗

    1500002723962是文本框

    目前我有以下代码,它是不工作的:

    < >脚本
    //用请求主题的下拉值自动填充主题,并以这样的格式进行填充
    $(文档)时函数(){
    //字段信息与主题匹配,这个是内部支持配置
    var issuePickerTicketFieldID = . var1500004202322
    var ticketFormID = location.search.split('ticket_form_id=')[1];
    var ticketFormTitle = $('select#request_issue_type_select >选项:selected').text();

    var issuePickerTicketFieldID = . var1500002723962
    var ticketFormID = location.search.split('ticket_form_id=')[1];
    var ticketFormTitle = $('text').text();


    if (ticketFormID == 1500000387101) {
    $ (' .form-field.request_subject ') hide ();//隐藏主题
    $ (' # request_subject ') .val (ticketFormTitle);
    $('#request_custom_fields_' + issuePickerTicketFieldID)。On ('change', function() {
    Var issue = $(this).next(' a.s nety -input').text();
    $ (" # request_subject”)。val(ticketFormTitle + ': ' + issue + issue);
    });

    });
    > < /脚本

    0
  • 杰夫•道奇

    我能够通过使用答案中的代码来隐藏我的自定义字段,但是当我通过我的移动设备去我的帮助中心时,隐藏在桌面上的自定义字段显示在我的移动设备上。是否有不同的代码,我需要使用它隐藏在移动设备上?

    谢谢,

    杰夫

    0
  • Janaya卡西迪

    下午好!

    我想知道是否有人可以帮助我用正确的代码将“描述”字段标题更改为首选的替代标题,例如附加信息/原因。这将允许我们自定义字段,并删除两个表单上名称相似的字段,从而避免重复。

    感谢!

    0
  • 克里斯HJ

    谢谢

    如果我想像下面这样应用它,
    我需要改变script.js吗?或者我应该更改哪个文件?

    ===========================================

    var ticketForm = location.search.split('ticket_form_id=')[1];

    if(ticketForm == 215063) {
    $ (' .form-field.request_subject ') hide ();//隐藏主题
    $ (' .form-field.request_description ') hide ();//隐藏描述
    $ (" # request_subject”)。瓦尔(实验对象);//自动填充主题
    $ (" # request_description”)。瓦尔(测试描述);//自动填充描述

    0
  • Kuldeep Patidar

    克里斯

    这是正确的-粘贴您的代码到函数最接近(元素,选择器)之前的第10行。

    1
  • 谭必应

    亲爱的所有,

    我能够通过下面的脚本为主题设置值,但描述不成功。你能帮帮我吗?我已经被困在这里好几天了。首先非常感谢你的帮助。

    最终用户界面如下所示。

    script.js中的代码如下所示。

    0
  • 谭必应

    顺便说一句,我发现“request-description”字段在iframe中,如下所示。我们如何通过在script.js中添加编码来赋值

    0
  • Ifra Saqlain
    社区的主持人
    最积极参与社区成员- 2022年
    年度最具参与度社区成员- 2021年

    嘿,

    我试图解决你第一个问题:

    我能够通过下面的脚本为主题设置值,但描述不成功。

    你可以像在代码中那样轻松地更改描述。

    1).在document_head上添加jquery库。哈佛商学院的文件。

    2).在script.js文件中添加脚本代码。

    3).输出为:

    确保检查工具中的控制台选项卡应该是清晰的,如果有任何问题,那么可能就是这个原因,因为它发生了,当控制台显示脚本中单个代码/行/变量的错误时,那么下面的代码/行/变量的代码不工作。

    做一件事,注释你所有的自定义代码,只留下未注释的行:

    $ (" # request_subject”)。瓦尔(实验对象);
    $ (' # request_subject ') . css(“颜色”,“红”);
    $ (" # request_description”)。瓦尔(测试描述);

    现在测试工作与否,让我知道如果不工作。然后我会尝试你的工作主题,你将设置为现场。

    谢谢

    0
  • Ifra Saqlain
    社区的主持人
    最积极参与社区成员- 2022年
    年度最具参与度社区成员- 2021年

    谭兵,你好!

    这是你第二个问题的第二个答案:

    顺便说一句,我发现“request-description”字段在iframe中,如下所示。我们如何通过在script.js中添加编码来赋值

    答。的过程是相同的,您可以分配标签和内容瓦尔()函数。

    输出是:

    如果有任何疑问,请告诉我:)

    谢谢

    0
  • 蒙纳

    大家好!

    我已经设法用本文中建议的代码隐藏了主题行和描述:

    var formId = $("#request_issue_type_select").val();

    if (formId === '12345') {
    $ (' .form-field.request_subject ') hide ();//隐藏主题
    $ (' .form-field.request_description ') hide ();//隐藏描述
    $ (' # request_subject ') .val(测试);//自动填充主题
    $ (' # request_description ') .val(测试);//自动填充描述

    然而,页面似乎并不总是正确加载。有时这些字段会消失,有时不会,只有在重新加载页面时才会消失。我猜脚本没有正确加载,但我不知道为什么或如何修复它。

    我试着用文档。addEventListener('DOMContentLoaded', function(){})和
    $(document).ready(function(){}),正如本文的注释中所建议的那样。两者的结果是一样的。Chrome、Firefox和Microsoft Edge也是如此。

    希望有人能帮忙!

    0
  • Ifra Saqlain
    社区的主持人
    最积极参与社区成员- 2022年
    年度最具参与度社区成员- 2021年

    我尝试了你的代码,为我工作很好,你可以分享你的HC的公共URL,并将你的工作主题设置为Live,这样我就可以看到这个主题,并能找出错误。

    默认形式:没有主题和描述框。

    形式一:两个盒子都有。

    0
  • 蒙纳

    嗨,Ifra,谢谢你的快速回复!

    我昨天一直在继续尝试不同的东西,我想我已经发现了问题。至少我不能再复制那个bug了。

    的jQuery版本document_head.hbs是3.5.1,我把它改成了在这里的一篇文章中推荐的版本(https://code.jquery.com/jquery-3.6.0.min.js)之后,这个问题就没有再发生过。

    希望这可以帮助任何遇到这个问题的人!

    0
  • Kuldeep Patidar

    @……@……我希望你们一切都好!!

    目前,我正在两个不同的Zendesk实例之间进行集成,我想请您帮助更新一个主要的API调用。亚博

    通知你:我后,指令都列在篇文章。

    然而,在创建第一个API时,即。“创建安全票据”在标准实例中,我得到这个错误{"error":"Unprocessable Entity","message":"Server cannot parse JSON"}。

    以下是我在API请求中发送的内容:

    {% case 1900000485187%}
    {%当1900000485187%}
    {% assign group = 360020723832 %}

    {% else %}
    {% assign group = " %}
    {% endcase %}

    “票”:

    "subject": "Test Request",
    “group_id”:{{集团}},
    "评论":{
    "body": "已经完成了"
    },
    “请求者”:“abc@domain.net”,
    “标签”:[
    “escalated_from_standard”,
    “ticket_stub_required”
    ),
    "custom_fields": [{"id": 360047087692, "value": "abc@domain.net"}]

    但是,当我在删除Liquid Markup后使用上述代码时,API成功地运行并在安全实例中创建了一个票据。


    “票”:

    "subject": "Test Request",
    “group_id”:{{集团}},
    "评论":{
    "body": "已经完成了"
    },
    “请求者”:“abc@domain.net”,
    “标签”:[
    “escalated_from_standard”,
    “ticket_stub_required”
    ),
    "custom_fields": [{"id": 360047087692, "value": "abc@domain.net"}]

    我很确定我的语法有问题,但说实话我不明白。

    如果您能提供任何信息,我将不胜感激。

    最贴心的问候,

    Kuldeep

    0
  • 布兰登Tidd
    社区的主持人
    谦逊奖——2021年

    @……-

    我认为问题是,组不能在JSON中为空。在这种情况下,需要提供一个默认组。您可以通过进入设置> API >目标失败并向下滚动查看详细信息来确认。希望这能有所帮助!

    布兰登

    {% else %}
    {% assign group = " %}
    {% endcase %}

    “票”:

    "subject": "Test Request",
    “group_id”:{{集团}},
    0
  • 布兰登Geick

    我需要隐藏一个自动填充的主题字段在一个公共形式。

    我需要隐藏我的Description字段。

    0
  • 克里斯托弗•肯尼迪
    亚博Zendesk开发者倡导

    嘿,布兰登,

    本文中的技巧将介绍如何实现这一目标。你是否遇到了特定的阻碍?

    谢谢,

    0
  • Ifra Saqlain
    社区的主持人
    最积极参与社区成员- 2022年
    年度最具参与度社区成员- 2021年

    嗨@ brandon Geick,就像@克里斯托弗•肯尼迪说这篇文章涵盖了你想要的(见我在这个帖子上面的评论),如果你有不同的东西,请分享在这里。

    谢谢

    0
  • Kuldeep Patidar

    @……

    谢谢你宝贵的建议,我照做了,而且对我很有效。

    0
  • 达斯汀

    我如何用jquery删除隐藏字段上的'required'属性?

    这将隐藏字段并删除星号,但当我点击提交时,它会给出错误,并说它仍然是必需的。

    $ (' .request_custom_fields_1260821161229 ') hide ();
    $ (' .form-field.string.required.request_custom_fields_1260821161229 ') .removeClass(“需要”);
    0
  • Ifra Saqlain
    社区的主持人
    最积极参与社区成员- 2022年
    年度最具参与度社区成员- 2021年

    达斯汀Swayne时,需要禁用必选字段支持然后你不需要添加jQuery。

    按照以下步骤禁用所需属性:

    1).浏览Support论坛,单击工作台右上角的图标,并选择支持

    2).选择管理在左边的边栏中,然后您将获得与票据相关的字段和条件,因此您可以取消选中要求票据字段中的选项。

    如果有任何困惑,请告诉我:)

    谢谢

    Ifra

    0

登录留下评论。

提供:Zendesk亚博