У меня есть этот код JavaScriptФункция никогда не называет вторую функцию
function editRerenderFix() {
console.log("edit render start");
textAreaFix();
console.log("edit render middle");
setupDates();
console.log("edit render end");
}
/** Function to auto expand out the text area to hold all content **/
function textAreaFix() {
jQuery('textarea').on('change keyup keydown paste cut', function (event){
jQuery(this).height(100);
jQuery('textarea').each(function() {
jQuery(this).height(jQuery(this).prop('scrollHeight'));
});
});
return null;
}
/** Function to fix and set the custom date/time picker **/
function setupDates() {
jQuery('.dateFormat').remove();
var inputs = jQuery('.inputDate');
jQuery(inputs).each(function() {
var input = jQuery(this).val().split('/')[2];
if(input.length > 4) {
input = input.split(" ")[0];
}
if(input < '2015') {
jQuery(this).val("");
}
});
console.log("Setup Dates function ran");
jQuery('.inputDate').datetimepicker();
}
Эта функция вызывается с помощью метода AJAX OnComplete. Проблема в том, что когда он запускается, вызывается только textAreaFix()
. В консоли отображаются только «edit render start» и «edit render middle».
Причина, по которой «Настройка даты функция побежал» первый потому, что у меня есть эта функция,
jQuery(document).ready(function() {
jQuery.material.init();
textAreaFix();
setupDates();
tourStep();
easterEgg();
});
Как я могу получить функцию setupDates()
под названием?
EDIT:
Я добавил больше отладки в setupDates()
,
/** Function to fix and set the custom date/time picker **/
function setupDates() {
jQuery('.dateFormat').remove();
var inputs = jQuery('.inputDate');
console.log(inputs);
jQuery(inputs).each(function() {
var input = jQuery(this).val().split('/')[2];
console.log(input);
if(input.length > 4) {
console.log("Input > 4");
input = input.split(" ")[0];
console.log(input);
}
if(input < '2015') {
console.log("Fix 2015 dates");
jQuery(this).val("");
}
});
console.log("Setup Dates function ran");
jQuery('.inputDate').datetimepicker();
}
Когда я запускаю это я получаю,
Я не уверен, где "не определено" приходит от этого.
любые ошибки в консоли? –
Ошибок нет. Функция просто не вызывается. Я отрезал консоль. Первая функция «Даты установки» находится на загрузке страницы, а начало рендеринга редактирования - это когда я нажал кнопку, вызывающую метод ajax. –
Вы можете применить контрольные точки в коде и посмотреть, будет ли код остановлен. Используйте инструменты разработчика, доступные в браузере. – CuriousMind