webdevpuneet.com

Support Ticket Form

Desktop · 1280px · shown at 0% · edit the text, images and colours in the panel

Support Ticket Form — Free Website Section Template

Forms · v1.0.0 · Updated 2026-11-12 · Responsive · GSAP animation · HTML, React & Vue

CategoryForms
Tagssupporthelp deskticketpriorityconditional fieldsfile uploadformlight
Updated October 20, 2026

Extend with AI

Take This Section Further With AI

The AI prompt for this one is for Patreon supporters ($3 a month), along with a site with no ads. Supporters enter the passcode once and it is remembered in this browser.

· Become a supporter

What's included

Features

Topic menu from an editable list
Order number field that appears only for the “Order or billing” topic
Segmented priority control (radio buttons) from a list
Subject and description with a live character counter
Screenshot or file attachment drop area with the file name shown
Hidden and disabled fields never block sending
Posts as multipart form data with success and error messages
Theme colours and fonts; export HTML, ZIP, React or Vue

About this section

Support Ticket Form — Free Help Desk Form With Conditional Fields

Support Ticket Form: A help-desk form: pick a topic, and a field for an order number appears only when the topic needs it; choose a priority with a segmented control, describe the problem in a box with a character counter and drop in a screenshot. The topic, priority and file area are editable, and the request posts to Formspree, Basin, Getform or your own server.

Support Ticket Form gathers what a support team needs to answer in one reply. The visitor gives an email, chooses a topic, sets a priority with a segmented control, writes a subject and a description (with a counter) and can drop in a screenshot. If the topic is “Order or billing”, an order number field appears; for other topics it stays hidden.

Conditional fields

Showing a field only when it is relevant keeps the form short. Here a small piece of script watches the topic menu: when its value matches, the order number field is shown and required; otherwise it is hidden and disabled, so it never blocks the form or sends an empty value. You can reuse the idea for any field by adding data-fk-when="name=value" to its wrapper.

Priority without a dropdown

The priority control is a row of radio buttons styled as a segmented switch (Low, Normal, Urgent). It is quicker than a menu and is fully keyboard accessible. Edit the topics and priorities in the editor and the form updates.

Attach and send

The attachment area accepts PNG, JPG and PDF files and shows the chosen name. Every form posts to the address you paste into "Form URL" (Formspree, Basin, Getform or your own server), shows a success message, shows an error message when something fails and contains a hidden spam-trap field. Without JavaScript it is an ordinary form post. You receive email, topic, order number, priority, subject, description and the attachment. For a lighter contact form see the Centered Contact Form; to answer common questions before people write, add an FAQ section above this form.

Why use it

Why Use the Support Ticket Form

🎫
Complete tickets
Topic, priority and a description arrive together, so agents can start helping at once.
🙈
Only relevant fields
The order number shows only when it is needed, keeping the form short.
📷
Screenshots attached
A drop area makes it easy to show the problem instead of describing it.

How it’s different

How It’s Different From Other Free Section Templates

✎
Editable, not just copyable
Change text, links, images, colours and fonts in the browser before you export, instead of editing someone else’s code by hand.
◐
One theme for every section
Colours, fonts, radius and width are shared CSS variables, so every section you combine looks like one website.
⇲
Responsive by container
Container queries make each section adapt to its own width, in a full page, a column or a page builder.
✦
GSAP animation built in
Every section animates in with GSAP and ScrollTrigger, stays visible without JavaScript and respects reduced motion.
</>
HTML, React and Vue
Export a single HTML file, a ZIP with your images, a React component or a Vue component, or fork the code into My Code.
◍
Free, private, saved
No account and no watermark. Designs, uploaded images and fonts stay in your browser, with a backup file you can restore anywhere.

Step by step

How to Use

  1. 1
    Edit the contentFill in the heading, labels, topics & priorities and form in the panel. Wrap words in *asterisks* to colour them.
  2. 2
    Add your imagesUpload your own images (resized in your browser and kept on your device) or paste a hosted image URL.
  3. 3
    Match your brandPick a colour preset or exact colours, choose heading and body fonts from Google Fonts or your own uploaded font, set the corner radius and width, or apply your brand kit.
  4. 4
    Animate and previewChoose a GSAP entrance effect and speed, press Play animation, and check the section on desktop, tablet and mobile.
  5. 5
    Save and exportSave it to My designs, then export a single HTML file, a ZIP with your images, a React or Vue component, or fork it into My Code.

Real-world uses

Common Use Cases

🛒
Online shops
Add a help page where customers choose order or billing, enter an order number and attach a photo of a damaged item.
💻
Software and SaaS help centres
Let users report a technical problem with priority and a screenshot, so your team can reproduce it faster.
🏦
Service providers
Route account, billing and general requests by topic and let people mark urgent ones, so the team can read the most pressing tickets first and answer them within the hour.
🧑‍🎓
Schools and communities
Give students and members one place to ask for help with a topic, a short description and an optional file.

Got questions?

Frequently Asked Questions

The wrapper has data-fk-when="topic=Order or billing". A small script compares the topic value on every change, shows the field when it matches and disables the inputs inside when it does not.

Yes. In the exported HTML wrap any field in an element with data-fk-when="fieldname=value" and add the hidden attribute. It works with selects, radio buttons and checkboxes.

A set of radio buttons styled as a segmented switch. The chosen value is posted as priority. Edit the priorities list to change the options.

It posts to the endpoint you provide. Use Formspree or Basin to email the request, or send it to your own API, which can create the ticket in your help desk.

Yes. Every control has a label or legend, errors are announced, focus rings are visible and hidden conditional fields are removed from the tab order.

It saves an editable copy of your Support Ticket Form in My Code, the UI Snippets code editor: the section markup goes in the HTML panel, its CSS (theme variables, base styles and layout) in the CSS panel, and the GSAP library is added as a CDN link, so you can keep refining the code and save your own versions.

Yes. Every section is free for personal and commercial work, with no account, no watermark and no attribution: export it on its own as HTML, React, Vue or Next.js from its page, or use it in a website you build and export in the Website Builder.