Ошибка вызова функции js при загрузке в index.html
Я хочу вызвать функцию JS, когда загружается index.html.
Эта функция js определена в файле main.js.
Я могу назвать это, используя следующий способ
<input type="button" value="Submit" onclick="getSecretData()" />
Но я хочу, чтобы эта функция вызывалась каждый раз, когда загружается index.html (вместо кнопки)
Я попробовал приведенный ниже код. Это не работает. Можете ли вы помочь?
index.html
<script>
$(document).ready(function() {
getSecretData();
});
</script>
main.js
function getSecretData(){
var invocationData = {
adapter: "DummyAdapter",
procedure: "getSecretData",
parameters: []
};
WL.Client.invokeProcedure(invocationData, {
onSuccess: getSecretData_Callback,
onFailure: getSecretData_Callback
});
}
function getSecretData_Callback(response){
alert("getSecretData_Callback response :: " + JSON.stringify(response));
}
Спасибо
2 ответа
Вы используете Worklight. Вы читали учебные материалы?
Другие ответы, приведенные здесь, могут работать для вас, но поскольку вы используете Worklight, вы должны сделать это в более подходящем подходе для приложений на основе Worklight.
В вашем приложении Worklight, в общем \js\main.js, есть wlCommonInit()
,
Если вы хотите, чтобы какой-то код запускался при запуске приложения, разместите его там.
function wlCommonInit() {
myFunction();
}
function myFunction(){
// whatever you want to run...
}
Обратите внимание, что вызывать адаптеры при запуске приложения нецелесообразно. Адаптеры требуют подключения к серверу Worklight, поэтому сначала нужно попытаться подключиться к серверу, используя WL.Client.connect
и если вам это удастся, только тогда вызовите адаптер через подключение onSuccess
Перезвоните.
WL.Client.connect({onSuccess: myFunction, onFailure: connectionFailure});
Например:
function wlCommonInit() {
WL.Client.connect({
onSuccess: myFunction,
onFailure: connectionFailure
});
}
function myFunction(){
// whatever you want to run...
}
function connectionFailure(){
// ...
}
Вы можете попробовать это.
document.querySelector('body').addEventListener("load", getSecretData, false);
Для получения дополнительной информации я рекомендую прочитать этот предыдущий ответ или страницу MDN