Category: JavaScript
Updated

This solution is summarized from an archived support forum post. This information may have changed. If you notice an error, please let us know in Discord.

Password Matching Validation

Issue

As a newbie in coding using Appsmith, I am trying to implement password matching validation in a custom registration form for my app. I am unsure how to reference elements using getElementbyID in the Appsmith platform. I need help getting started with this task.

Resolution

To implement a password matching validation in Appsmith, you can use the Input widget and its properties. First, add two Input widgets for the password fields. Then, in the Properties panel for the second password field widget, go to the Validation tab and click on the Custom validation toggle button.

In the Validation code box, you can use the values of the two password fields to check if they match. Here's an example code snippet:

const passwordInput1 = this.props.appsmithActions.getWidget(this.props.widgetName1);
const passwordInput2 = this.props.appsmithActions.getWidget(this.props.widgetName2);

if (passwordInput1 && passwordInput2) {
const password1 = passwordInput1.getPropertyValue("text");
const password2 = passwordInput2.getPropertyValue("text");

if (password1 === password2) {
return true;
} else {
return "Passwords do not match";
}
}

In this code, this.props.widgetName1 and this.props.widgetName2 are the names of the two password field widgets.

You can adapt this code to fit your specific use case. Finally, make sure to save your changes and test your form to ensure the validation is working as expected.