Страница 1 из 4

[Настройка] Обращение к объектам, методам, и скриптам на Javascript

Добавлено: Вт апр 18, 2017 8:17 pm
Vovix
Часто бывает необходимо обратиться к объектам из Javascript, а для этого есть jQuery, а именно $.get
желательно иметь это описание в одном месте, поэтому создаю тут (нужно дополнять):

Запуск метода у объекта:

Код: Выделить всё

$.get( "/objects/", { object:"ИмяОбъекта", op:"m",m:"ИмяМетода", task:"ПередаваемыйПараметр" } ); 
Получение значения свойства у объекта:

Код: Выделить всё

$.get("/objects/", { object:"ИмяОбъекта", op:"get", p:"ИмяСвойства" }).done(function(data) {
   alert("Полученное значения:" + data); 
}); 
Запуск скрипта(сценария) с параметром:

Код: Выделить всё

$.get( "/objects/", { script:"ИмяСкрипта", ИмяПередаваемогоПараметра: "ЗначениеПараметра" } ).done(function( data ) {
    alert( "Data Loaded: " + data );
  });
или

Код: Выделить всё

$.get('/objects/?script=ИмяСкрипта&ИмяПараметра1=ЗначениеПараметра1&ИмяПараметра2=ЗначениеПараметра2');

Запуск скрипта(сценария) без параметра:

Код: Выделить всё

$.get('/objects/?script=ИмяСкрипта'); 
Установка значения свойства (не уверен, поправьте если ошибся):

Код: Выделить всё

$.get( "/objects/", { object:"ИмяОбъекта", op:"set",p:"ИмяСвойства", v:"ПередаваемоеЗначение" } );

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Вт апр 18, 2017 10:56 pm
skysilver
Есть файл js/scripts.js, в котором уже имеются подобные функции.

Код: Выделить всё

function callMethod(method_name, optional_params)
function runScript(script_name, optional_params) 
function ajaxGetGlobal(varname, id, timeout) 
function ajaxSetGlobal(varname, value) 
Также там есть более общая функция

Код: Выделить всё

function AJAXRequest(url, ready_function, first_param, proc_function)
которая позволяет выполнить произвольный get-запрос с параметрами, и при желании обработать результат выполнения в callback-функции.

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Вт апр 18, 2017 11:43 pm
Vovix
skysilver писал(а):Есть файл js/scripts.js, в котором уже имеются подобные функции.

Код: Выделить всё

function callMethod(method_name, optional_params)
function runScript(script_name, optional_params) 
function ajaxGetGlobal(varname, id, timeout) 
function ajaxSetGlobal(varname, value)
Также там есть более общая функция

Код: Выделить всё

function AJAXRequest(url, ready_function, first_param, proc_function) 
которая позволяет выполнить произвольный get-запрос с параметрами, и при желании обработать результат выполнения в callback-функции.
я сейчас посмотрел файл js/scripts.js!
по сути там короткий код обертки методов Ajax.
Что-то мне подсказывает, что и предложенные выше и взятые от сюда функции имеют право жить!!!

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Ср апр 19, 2017 10:26 pm
directman66
Может кто сможет прикрутить ява кнопкам обратную связь по свойству объекта. viewtopic.php?f=4&t=490&start=20

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Ср апр 19, 2017 11:30 pm
Vovix
directman66 писал(а):Может кто сможет прикрутить ява кнопкам обратную связь по свойству объекта. viewtopic.php?f=4&t=490&start=20
у меня это сделано в TO DO - viewtopic.php?f=4&t=2613

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Ср апр 19, 2017 11:45 pm
Vovix
ну или суть такая:

создаем в javascript периодический таймер и пример HTML далее:

Код: Выделить всё

<script type="text/javascript">
setInterval(function() {  

$.get("../objects/", { object:"ИмяОбъекта", op:"get", p:"ИмяСвойства" }).done(function(data) {
 $("#ссс1").html(data);
}); 
}, 1000);
</script>
<span id="ccc1"></span>
вставьте это например в чистую домашнюю страницу (заменив на свои значения Имена) и попробуйте, при изменении свойства у вас будет меняться значение! этого всего в обычных условиях можно достичь через
вставку %ИмяОбъекта.ИмяСвойства% но это в PHP или HTML
а вот когда нужно через javascript, то можно так поизвращаться!

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Чт апр 20, 2017 7:31 am
directman66
вставил в меню html блок
СпойлерПоказать
<script type="text/javascript">
setInterval(function() {

$.get("../objects/", { object:"Relay01", op:"get", p:"status" }).done(function(data) {
$("#ссс1").html(data);
});
}, 1000);
</script>
relay01
<span id="ccc1"></span>
и результат не наблюдаю, на домашней странице тоже самое.

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Чт апр 20, 2017 11:47 am
Vovix
directman66 писал(а):вставил в меню html блок
СпойлерПоказать
<script type="text/javascript">
setInterval(function() {

$.get("../objects/", { object:"Relay01", op:"get", p:"status" }).done(function(data) {
$("#ссс1").html(data);
});
}, 1000);
</script>
relay01
<span id="ccc1"></span>
и результат не наблюдаю, на домашней странице тоже самое.
перепроверил, может ccc я по русски писал, попробуйте вот так (у меня проверил, реально работает):
СпойлерПоказать

Код: Выделить всё

<script type="text/javascript">
setInterval(function() {  

$.get("../objects/", { object:"ThisComputer", op:"get", p:"timeNow" }).done(function(data) {
 $("#zzz1").html(data);
}); 
}, 1000);
</script>
<span id="zzz1"></span>

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Чт апр 20, 2017 11:59 am
directman66
Почему-то не работает таймер
СпойлерПоказать
Изображение
Отправлено с моего Redmi Note 3 через Tapatalk

Re: обращение к объектам, методам, и скриптам на Javascript

Добавлено: Чт апр 20, 2017 12:21 pm
Vovix
тогда не могу сказать! я проверил в домашней странице! точно работает!