File tree Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Original file line number Diff line number Diff line change @@ -36,6 +36,7 @@ module.exports = {
36
36
'no-serialize' : require ( './rules/no-serialize' ) ,
37
37
'no-show' : require ( './rules/no-show' ) ,
38
38
'no-slide' : require ( './rules/no-slide' ) ,
39
+ 'no-submit' : require ( './rules/no-submit' ) ,
39
40
'no-text' : require ( './rules/no-text' ) ,
40
41
'no-toggle' : require ( './rules/no-toggle' ) ,
41
42
'no-trigger' : require ( './rules/no-trigger' ) ,
@@ -80,6 +81,7 @@ module.exports = {
80
81
"jquery/no-size" : 2 ,
81
82
"jquery/no-sizzle" : 2 ,
82
83
"jquery/no-slide" : 2 ,
84
+ "jquery/no-submit" : 2 ,
83
85
"jquery/no-text" : 2 ,
84
86
"jquery/no-toggle" : 2 ,
85
87
"jquery/no-trigger" : 2 ,
Original file line number Diff line number Diff line change
1
+ 'use strict' ;
2
+
3
+ const utils = require ( './utils.js' )
4
+
5
+ module . exports = function ( context ) {
6
+ return {
7
+ CallExpression : function ( node ) {
8
+ if ( node . callee . type !== 'MemberExpression' ) return
9
+ if ( node . callee . property . name !== 'submit' ) return
10
+
11
+ if ( utils . isjQuery ( node ) ) {
12
+ context . report ( {
13
+ node : node ,
14
+ message : 'Prefer dispatchEvent + form.submit() to $.submit'
15
+ } )
16
+ }
17
+ }
18
+ }
19
+ }
20
+
21
+ module . exports . schema = [ ]
Original file line number Diff line number Diff line change
1
+ 'use strict' ;
2
+
3
+ const rule = require ( '../rules/no-submit' )
4
+ const RuleTester = require ( 'eslint' ) . RuleTester
5
+
6
+ const error = 'Prefer dispatchEvent + form.submit() to $.submit'
7
+
8
+ const ruleTester = new RuleTester ( )
9
+ ruleTester . run ( 'no-submit' , rule , {
10
+ valid : [
11
+ 'submit()' ,
12
+ '[].submit()' ,
13
+ 'form.submit()' ,
14
+ 'form.submit'
15
+ ] ,
16
+ invalid : [
17
+ {
18
+ code : '$("form").submit()' ,
19
+ errors : [ { message : error , type : 'CallExpression' } ]
20
+ } ,
21
+ {
22
+ code : '$form.submit()' ,
23
+ errors : [ { message : error , type : 'CallExpression' } ]
24
+ } ,
25
+ {
26
+ code : '$("form").first().submit()' ,
27
+ errors : [ { message : error , type : 'CallExpression' } ]
28
+ } ,
29
+ {
30
+ code : '$("form").append($("input").submit())' ,
31
+ errors : [ { message : error , type : 'CallExpression' } ]
32
+ }
33
+ ]
34
+ } )
You can’t perform that action at this time.
0 commit comments