Прежде всего, пожалуйста, не обращайте внимания, если этот вопрос кажется глупым, так как я не очень хорош в части JavaScript.

Мне нужно вызвать функцию внутри другой функции при загрузке документа. Пример кода приведен ниже. Здесь мне нужно предупредить сообщение «мое второе предупреждение». Как я могу сделать это? Я знаю, что инициализация alertSecond() внутри функции сработает, но есть ли другой способ сделать это?

Заранее спасибо

$(document).ready() {

test();

function test() {
    alert('my first alert');
    function alertSecond() {
        alert('my second alert')
    }
}

}

0
user1817630 1 Фев 2013 в 18:00

5 ответов

Предыдущий ответ не запускается, он не отображает никаких предупреждений, попробуйте это:

function alertSecond() {
     alert('my second alert')
}

function test() {
     alert('my first alert'); 
     alertSecond();
}


$(document).ready(function(){

test();

})

Вот живой пример:

http://jsfiddle.net/2xgXG/

0
sandino 1 Фев 2013 в 14:13
$(document).ready(function(){
test()
}) ;
function test() {
    alert('my first alert');
    alertSecond();
}
function alertSecond() {
        alert('my second alert')
    }
0
Pratik Bhatt 1 Фев 2013 в 14:02

Итак, вы объявляете свои две функции примерно так:

function myFunct1(){
alert('alert 1 from function 1');
}
function myFunct2(){
alert('alert 2 from function 2');
}

Тогда, если вы захотите вызвать их обоих один за другим, ваша загрузка будет выглядеть так:

$(document).ready(function(){
myFunct1();
myFunct2();
});

Если вы хотите вызвать вторую функцию из первой, ваше определение функции должно выглядеть так:

function myFunct1(){
alert('alert 1 from function 1');
myFunct2();
}
function myFunct2(){
alert('alert 2 from function 2');
}
-1
user1636130 1 Фев 2013 в 14:30

Просто вызовите свою функцию из 1-й функции, и она будет работать. Вам не нужно определять функции везде. Когда нет повторного использования, лучше не определять код как функцию.

Следующий код должен работать:

$(document).ready(function(){
 test();
});
function test() {
alert('my first alert');
alertSecond();
}
function alertSecond() {
    alert('my second alert');
}
0
Srihari 1 Фев 2013 в 14:28

Все, что вам нужно, это вызвать alertSecond () в функции test ().

$(document).ready(function(){
    test();
    function test(){
        alert('my first alert');
        alertSecond();
        function alertSecond(){
            alert('my second alert');
        }
    }
});  

Также вы можете определить test () и alertSecond () из функции $ (document) .ready, если вы хотите вызывать их в других функциях.

0
Xiaodan Mao 1 Фев 2013 в 15:41