4

ここの jquery.validate プラグインのドキュメントによると: http://docs.jquery.com/Plugins/Validation/Methods/accept#extension

ファイル拡張子を検証するために、次のようにファイルのファイル拡張子を確認できます。

$("#myform").validate({
  rules: {
    field: {
      required: true,
      accept: "xls|csv"
    }
  }
});

ただし、これはフィールドに影響を与えないように見えますが、好きなフィールドに任意のファイルを追加できます。「必要な」検証はフィールドで機能し、ページには検証コードが機能する他のフィールドがありますが、「受け入れる」ルールは適用されていません。

問題を示す JSFiddle: http://jsfiddle.net/SCgRr

4

2 に答える 2

2

ドキュメントが古くなっているので、additional-methods.jslib とjquery.validate.

不足しているライブラリを追加しましたが、すべて問題ありません。

于 2012-12-01T00:43:53.180 に答える
0

私は同じ問題を抱えていました - 具体的には"xls|csv"- を含めた後でもadditional-methods.js

この新しい段落http://docs.jquery.com/Plugins/Validation/Methods/accept#extensionに注意してください

注: この方法では、ファイル名、特にファイル拡張子のみを確認していました。この動作は、この「accept」メソッド自体と同じように、additional-methods.js 内の「extension」メソッドとして利用できるようになりました。

acceptは mimetype を指定extensionするようになり、ファイル名拡張子に固有です。拡張子と MIME タイプが同じであるため、「pdf」などの拡張子が機能します。ただし、xls と csv はテキストであり、ファイル名拡張子に対して評価する必要があります。

したがって、新しいドキュメントごとに変更acceptするとうまくいきました。extension

完全なコード:

$("#myform").validate({
  rules: {
    field: {
      required: true,
      extension: "xls|csv"
    }
  }
});
于 2013-03-13T14:31:17.943 に答える