如果用户操作表单ID,保护它或停止此操作的最佳做​​法是什么?

时间:2017-12-12 00:50:55

标签: javascript html ajax laravel

如果用户更改formID我该怎么做才能使ajax调用和jquery验证成功。

<form id="formID" action="">



(function ($, W, D) 
{
  var JQUERY4U = {};
  JQUERY4U.UTIL =
  {
    setupFormValidation: function ()
    {
      $("#formID").validate({
        rules: {
          input:"required",


        },
        messages: {
          input: "required",

        },
        submitHandler: function (form) {

         var form = $('#formID')[0];
         var formData = new FormData(form);

         $.ajax({
          type: 'post',
          url: '/',
          data: formData,
          contentType: false,
          processData: false,

          success: function(data) {

           if (data.response == true) {

             alert('true');

           } else { 

              alert('false');

          }

        },  error: function (jqXHR, exception) {


             console.log(jqXHR.status);
         }
     });


       }
     });
    }
  }
  $(D).ready(function ($) {
    JQUERY4U.UTIL.setupFormValidation();
  });

})(jQuery, window, document);

1 个答案:

答案 0 :(得分:0)

只需删除submitHandler中的var form = $('#formID')[0];即可。表单元素已作为参数公开

插件已经初始化,然后用户可以在控制台中更改ID,也可能在任何用户脚本或浏览器扩展名之前

更改ID不会影响已附加到该元素的事件。

除此之外,您无法控制用户在浏览器中执行的操作,只需要确保您的后端是安全的