Вызов определенной функции php аякс

12
Dreammaker
На сайте с 20.04.2006
Offline
569
#11
LEOnidUKG #:
https://www.google.com/search?client=opera&q=jquery+onclick+id+function&sourceid=opera&ie=UTF-8&oe=UTF-8

не поможет, если я правильно понимаю (точнее ошибку, то исправит, но не решит проблему). Тут более глобальная проблема.

megal
На сайте с 16.09.2008
Offline
120
#12
       <script>
                function handleClick(myRadio) {
                        //alert(myRadio.value); (чисто для проверки, нужные данные в функцию приходят
                    $.ajax({
                        type: "POST" 
                        url: "/components/com_comments/models/item.php", 
                        data: myRadio.value, 
                        success: function(data){
                            console.log(data);
                    	  }, 
                        dataType: "dataType" 
                    });
                }

        </script>

а в файле item.php вы должны вывести результат работы функции  getVoteComments() через  echo 

S
На сайте с 30.09.2016
Offline
469
#13

Dram :

Где ошибаюсь?

                    $.ajax({
                        type: "POST"
                        url: "/components/com_comments/models/item.php",
После type: "POST" запятую поставь.
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
D
На сайте с 28.06.2008
Offline
1114
#14

Спасибо за помощь, продвинулся в понимании немного дальше. Решил не говнокодить и соблюсти стандарты. Вынес код JS в отдельный файл (который был уже ранее с другими функциями)

                jQuery(document).on("click", ".checked_comm_div input", function() {
                        var vote = $("input[name='radio']:checked").val();
                                //console.log(vote);
                        jQuery('#msg').hide();
                        jQuery.ajax({
                                type: 'POST',
                                url: '/index.php',
                                dataType: 'json',
                                timeout: 5000,
                                data: {
                                        option: 'com_comments',
                                        view: 'item',
                                        format: 'json',
vote: vote,
                                        task: 'getVoteComments'
                                },
                                success: function (data) {
                            console.log(data)
                                }
                        });
                });

Пока еще работает только 

console.log(vote)

Далее в файле   такая функция

    function getVoteComments()
    {
        $vote = JRequest::getVar('vote');

        if (isset($vote)) {
            if ($vote == 'good') {
                $rate = ' AND `rate` >=4';
            } elseif ($vote == 'neutrally') {
                $rate = ' AND `rate` =3';
            } elseif ($vote == 'bad') {
                $rate = ' AND `rate` <=2';
            } else {
                $rate = '';
            }
            //тут запрос в базу
        }
    }

Правильно ли я понимаю

data: {
       option: 'com_comments', //указал какой компонент
       view: 'item', //указал какой файл - item.php
task: 'getVoteComments', //вот тут сомневаюсь, как дать понять скрипту какая функция нужна?
vote: vote
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий