1

フィールドにカスタム検証を使用します

<div class="control-group">
  <label class="control-label" for="region">Region*</label>
  <div class="controls">
    <input type="text" class="input-xlarge" id="region" name="region" minlength="1" maxlength="50" autocomplete="off">
  </div>
</div>

var regionsList = ["value1", "value2", ..., "value 80"];

$.validator.addMethod("validRegion", function (value, element, param) {
  return this.optional(element) || (param.indexOf(value) != -1); // ERROR IS HERE
}, "Please start to type and choose correct value");

$("#myform").validate({
  rules: {
    "region": {
      required: true,
      validRegion: regionsList
    },
 ...

この行で何が間違っている可能性がありますか(コメントERROR IS HEREの行を探してください)?エラーはObject doesn't support this property or methodです。

4

1 に答える 1

4

Array.indexOfIE9以降でのみサポートされます。すでにjQueryを使用しているので、使用できます$.inArrayArray.indexOfサポートされている場合は使用します)。

$.validator.addMethod("validRegion", function (value, element, param) {
  return this.optional(element) || ($.inArray(value, param) != -1);
}, "Please start to type and choose correct value");
于 2012-10-18T17:36:14.583 に答える