--- metadata: display_name: Custom JavaScript Display and Grading markdown: !!null showanswer: never data: |

In these problems (also called custom JavaScript problems or JS Input problems), you add a problem or tool that uses JavaScript in Studio. Studio embeds the problem in an IFrame so that your learners can interact with it in the LMS. You can grade your learners' work using JavaScript and some basic Python, and the grading is integrated into the edX grading system.

The JS Input problem that you create must use HTML, JavaScript, and cascading style sheets (CSS). You can use any application creation tool, such as the Google Web Toolkit (GWT), to create your JS Input problem.

For more information, see Custom JavaScript Problem in Building and Running an edX Course.

JavaScript developers can also see Custom JavaScript Applications in the EdX Developer's Guide.

When you add the problem, be sure to select Settings to specify a Display Name and other values that apply. Also, be sure to specify a title attribute on the jsinput tag; this title is used for the title attribute on the generated IFrame. Generally, the title attribute on the IFrame should match the title tag of the HTML hosted within the IFrame, which is specified by the html_file attribute.

You can use the following example problem as a model.

This is paragraph text displayed before the IFrame.