Я хочу функцию обратного вызова JQueryКак вызвать функцию JQuery
$(function upload() {
.....
});
$("#select").change(function() {
upload();
});
Консоль Uncaught ReferenceError: загрузка не определен
Я хочу функцию обратного вызова JQueryКак вызвать функцию JQuery
$(function upload() {
.....
});
$("#select").change(function() {
upload();
});
Консоль Uncaught ReferenceError: загрузка не определен
Это потому, что он находится внутри крышки и, следовательно, не является глобальным. Удалите эту упаковку $
, и все должно быть хорошо.
function upload() {
// (...) code
}
$("#select").change(function() {
upload();
})
Или поставить <select>
код внутри готовой оболочки DOM. Он тоже должен работать. Или объявите его как
window.upload = function(){
// this is global
}
Фактически вы предоставили именованный обратный вызов обработчику событий быстрого доступа DOM. Вы должны объявить его глобально (или в том же объеме).
Этот пример имеет их в той же области:
$(function(){ // DOM ready handler
function upload() {
};
$("#select").change(function() {
upload();
});
});
Поскольку функция не имеет параметров она сокращается до:
$(function(){ // DOM ready handler
function upload() {
};
$("#select").change(upload);
});
-уборщик образом (если функция не используется повторно) является лишь чтобы поместить код в обратный вызов change
:
$(function(){
$("#select").change(function() {
// Do the upload code here instead
});
});
Попробуйте следующее: определите функцию upload
внутри $(function(){ });
и назовите его внутри change
обработчик события select
коробка.
$(function(){
//define function
upload = function(){
....
}
$("#select").change(function() {
//call function
upload();
});
});
Вы должны установить («#select»). Изменить внутри Функция готовности и функция загрузки вне готовой функции.
function upload() {
// any thing you want to do after select
};
$(document).ready(function() {
$("#select").change(function() {
upload();
})
});
На самом деле ваша «Примечание» неверна. Пока он определен в том же объеме, он будет существовать. Также он должен быть определен только до того, как он будет фактически вызван. Javascript проверяет только время вызова :) –
@TrueBlueAussie, да, вы правы. Я удалил свою «заметку». Благодаря :) –