Skip to content

Comparison Rules

📥 Import

js
import { compareRules } from 'suriform/rules'

📌 Overview

RuleDescriptionType
matchMust equal a fixed valuetext
unmatchMust not equal a fixed valuetext
greaterMust be greater than a fixed numbernumber
lessMust be less than a fixed numbernumber
confirmMust match another field (e.g., password confirm)text
matchWithMust match another field’s valuetext
unmatchWithMust not match another field’s valuetext
greaterThanMust be greater than another field’s valuenumber
lessThanMust be less than another field’s valuenumber
greaterEqualMust be ≥ target field’s valuenumber
lessEqualMust be ≤ target field’s valuenumber

📝 Examples

html
<input name="age" match="5" />
<input name="age" unmatch="5" />
<input type="number" greater="5" />
<input type="number" less="5" />
<input name="passwordConfirm" confirm="password" />
<input name="field2" match-with="field1" />
<input name="field2" unmatch-with="field1" />
<input type="number" greater-than="field1" />
<input type="number" less-than="field1" />
<input type="number" greater-equal="field1" />
<input type="number" less-equal="field1" />

▶️ Usage

html
<form id="payment">
  <label>
    Password:
    <input type="password" name="password" />
  </label>

  <label>
    Confirm Password:
    <input type="password" name="passwordConfirm" confirm="password" />
  </label>

  <label>
    Age:
    <input type="number" name="age" greater="18" />
  </label>
</form>
js
import { watchform, defineRules } from 'suriform'
import { compareRules } from 'suriform/rules'

const form = document.querySelector('#signup')
watchform(form)
defineRules(compareRules)

Released under the MIT License.