Если я правильно понимаю ваши требования, они выглядят следующим образом:
- Сделайте асинхронный HTTP-запрос для получения HTML
- Измените возвращенный HTML с помощью dataValModify ()function
- Вставьте измененный HTML в ваш элемент с идентификатором: 'ajaxTest'
Если это так, то мне кажется, что вам нужно сделать ajax-вызов более низкого уровня, чем выиспользуется в настоящее время, т.е. $(elem).load()
По сути, вызов .load()
является оберткой для $.get()
, за которой следует вызов $(elem).html(someContent)
, где "someContent" - это responseText из HTTP-запроса.
Поэтому, если вы хотите изменить ответ до его внедрения в DOM, вы можете сделать что-то похожее на следующее:
$.ajax({
type: "GET",
url: "<MVC Route>",
dataType: "html",
success: function(jqXHR, textStatus, errorThrown){
// Your HTTP call was successful but nothing else has happened with the response yet
// Therefore you can now do whatever you want with the it...
// First modify the HTML using the dataValModify function
// Assumption being that your function returns the modified HTML string
var myModifiedHTML = dataValModify(jqXHR.responseText);
// Inject the modified HTML
$('#ajaxTest').html(myModifiedHTML);
}
});