2014-08-31 6 views
0

Я имею CGriview с кнопкой АЯКС, но когда я нажимаю на кнопку, на странице обновилась и оленья кожа отправить АЯКС параметр для моего действия, мой код выглядит так:кнопку Ajax в Cgridview не работает

enter code here 
array(
         'class'=>'CButtonColumn', 
         'template'=>'{reset}', 
         'buttons'=>array(
          'reset'=>array(
           'label'=>'reset', 
         'url'=>'Yii::app()->controller->createUrl("place/viewHallModal/",array("row"=>"1"))', 
           'options'=>array(
            'class' => 'btn', 
             'ajax'=>array(
              'type'=>'post', 
              'url'=>'js:$(this).attr("href")', 
              'update'=>'#section-update', 
              'success' =>'js:function(data) {alert("suc");}' 
             )), 
          ), 
         ), 

       ), 

ответ

0

У меня нет 50+ репутации для комментариев, поэтому я могу вам помочь только с , отвечая на вопрос.

В jQuery вы можете написать эту функцию АЯКС как этот

... 
$.ajax({ 
    type: 'post', 
    url: 'your_url_will_goes_here', 
    cache: false, // or true 
    data: { 
     'your_data': $variable, 
     'your_data1': $variable1, 
    }, 
    success: function(data){ 
     alert("success !"); 
}); 
.... 

, но я не мог видеть вашу функцию data АЯКС. Итак, какой data вы хотите перейти к своим действиям?

0

В документации

'buttonID' => array 
(
    'label'=>'...',  //Text label of the button. 
    'url'=>'...',  //A PHP expression for generating the URL of the button. 
    'imageUrl'=>'...', //Image URL of the button. 
    'options'=>array(), //HTML options for the button tag. 
    'click'=>'...',  //A JS function to be invoked when the button is clicked. 
    'visible'=>'...', //A PHP expression for determining whether the button is visible. 
) 

Ваша кнопка будет:

'reset'=>array(
      'label'=>'reset', 
      'url'=>'#', 
      'click'=>'js:function(){ 
       // here write your function 
      }' 
     ), 
+0

я изменить мой код, как это, но это работа !! доцент в обновлении страницы после щелчка на кнопке –

+0

может быть не знаю о событиях при нажатии. try: js: function (e) { e.preventDefault(); // а теперь напишите все, что вам нужно } –

0
I change my code like this,but dosent work yet and the page wes refreshed!! 
.... 
array(
         'class'=>'CButtonColumn', 
         'template'=>'{reset}', 
         'buttons'=>array(
          'reset'=>array(
           'label'=>'reset', 
'url'=>'Yii::app()->controller->createUrl("place/viewHallModal/")', 
           'click'=>'js:function(){ 
             alert("click"); 
             $.ajax({ 
              type: "post", 
              url: "js:$(this).attr("+"href"+")", 
              cache: false, // or true 
              data: { 
               "your_data": "a", 
               "your_data1": "b", 
              }, 
              success: function(data){ 
               alert("success !"); 
              } 
             }); 
           }', 
.... 

my function in the click event was run and show me the alert but it replace above url in the href of tag <a href=""></a> and when i click on the button go to that address!! 
+0

я удаляю URL-адрес и вводим URL-адрес мануала ajax, и он работает. Спасибо. –

 Смежные вопросы

  • Нет связанных вопросов^_^