многоразовые функции ajax и javascript в CSHTML (RAZOR) - PullRequest
0 голосов
/ 29 июня 2018

Я новичок в js и razor, часть моего кода должна быть повторена, и это наложило больше строк кода на мой проект, было бы неплохо, если бы я мог сделать его повторно используемым, например, Ajax, где я должен создать ajax для конкретный URL, чтобы просто вызывать его, когда мне нужно «в отдельном файле бритвы», в следующем коде у меня есть два события щелчка, и мой вызов ajax и URL повторяются, я хочу избавиться от этого повторения:

function seriesClick(e) {
var _clicketBarChart = e.series.categoryField;

$.ajax({
           dataType: "json",
           type: "POST",
           url: "@Url.Action("faultstatistics","Dashbrd")",
           contentType: "application/json; charset=utf-8",
           data: JSON.stringify({ "name": _clicketBarChart }),
               success: function (result) {
              faultstatChart(result);
               }
});


      function changeEvent(e) {             
      var _clicketCellGrid = e.categoryCell;


          $.ajax({
           dataType: "json",
           type: "POST",
           url: "@Url.Action("faultstatistics","Dashbrd")",
           contentType: "application/json; charset=utf-8",
           data: JSON.stringify({"name": _clicketCellGrid }),
               success: function (result) {
           faultstatChart(result);
               }
});
      }

1 Ответ

0 голосов
/ 29 июня 2018

Вы должны создать один метод, который может обрабатывать две ситуации, пожалуйста, обратитесь к этому примеру (на основе вашего):

var ajaxHandler = function(targetName) {
  $.ajax({
    dataType: "json",
    type: "POST",
    url: "@Url.Action("faultstatistics","Dashbrd")",
    contentType: "application/json; charset=utf-8",
    data: JSON.stringify({"name": _clicketCellGrid }),
    success: function (result) {
      faultstatChart(result);
    }
  });
}

var seriesClick = function(e) {
  var targetName = e.series.categoryField;
  ajaxHandler(targetName);
}
var changeEvent = function(e) {
  var targetName = e.categoryCell;
  ajaxHandler(targetName);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...