Вызов методов или функций с помощью Jquery - PullRequest
0 голосов
/ 12 апреля 2010

Так что я могу вызвать страницу php, используя jquery

$. Ajax ({type: "GET", URL: "refresh_news_image.php", данные: "имя =" + имя,

success: function (html) { оповещения (HTML) . $ ( 'Div.imageHolder') HTML (HTML);

  }

});

Однако, из-за того, что это немного запутанно, у меня есть несколько файлов .php, которые действительно только выполняют очень простые задачи. Если я хочу вызвать метод

$ images-> refresh_image ();

возможно ли это. В противном случае я мог бы просто создать большой файл с большим количеством функций?

Спасибо

Ross

Ответы [ 2 ]

1 голос
/ 12 апреля 2010

Ну, конечно, это зависит от цели, но если вы действительно хотите запустить функцию refresh_image, вам не нужно передавать какие-либо данные, вам не нужно обрабатывать успех и т. Д. грязно:

$.ajax({
   url: "refresh_news_image.php",
 });

Вы также можете создать общую функцию, например:

function php_func(name){
    $.ajax({
       data: { name: name }
       url: "background_functions.php",
     });
}

А затем background_functions.php:

switch($_GET['name']){
    case 'refresh_image':
        $images->refresh_image();
        break;
    case 'something else':
        something_else();
        break;
}

В javascript, когда вам это нужно (возможно, при нажатии), вы просто вызываете:

php_func('refresh_images');

Будьте осторожны, чтобы не использовать GET-параметр для запуска любой переданной функции, поскольку это, очевидно, огромный риск для безопасности. : -)

0 голосов
/ 12 апреля 2010

Вы не можете вызывать функции php напрямую из jQuery, потому что jQuery ничего не знает о php. Вы можете создать файл, который на основе заданного параметра запроса вызывает соответствующую функцию и возвращает результат.

...