2015-05-07 2 views
1

Ниже мой код, я получаю сообщение об успехе, когда я отправляю data: abuse and remark, но alert(uid, vid); не задан. Какая у меня ошибка? Я искал много, но не мог решить егополучение значения параметра как undefined

<script> 
     $(document).ready(function() { 
     $('#flag').click(function(){   
     $("#dialog").dialog({ 
      resizable: false, 
      height:140, 
      modal: true, 
      height: "auto" 

     }); 
     $('#save').click(function savedata(uid ,vid){ 
          abuse = $('#report_abuse :selected').text(); 
        remark = document.getElementById('motive').value; 
        var uid = this.uid; 
        var vid = this.vid; 
          alert(uid, vid); 

        $.ajax({ 
         type: "POST", 
         url: "tpl/main/process.php", 
         data: { abuse_data : abuse, remark_data : remark }, 
          success: function(data){ 
           alert('successful'); 
         } 
       }); 

      }); 
     }); 
     }); 
     </script> 
<?php if(isset($_SESSION['user_id'])) 
    { 
    $uid = $_SESSION['user_id'];  
    $vid = $_SESSION['seen'];  
    } 
    ?> 
    <input type="button" name="save" id="save" value="Save" onclick="savedata('$uid', '$vid')"/> 
+0

Нет ничего pas sed к названной функции - нет элементов, которые имеют такие параметры. Вы можете передать событие только. Похоже, вы модифицировали существующую функцию для щелчка. Пожалуйста, покажите, где должны быть uid и vid. Даже если вы МОЖЕТЕ передать uid и vid функции, это не будет 'this.uid' – mplungjan

+0

где ваша функция savedata ('$ uid', 'vid') и что такое $ uid в этом коде? – Saty

+0

Является ли намеренным, что ваш обработчик 'click' для' # save' находится внутри обработчика для '# flag'? – halex

ответ

0

Вы модернизированы функцию, которая не работает так, как вы хотите.

Я не вижу ни UID или VID используется в функции, кстати, но если вам это нужно, это как вы его используете:

$(document).ready(function() { 
    $('#save').on("click",function(e) { 
    e.preventDefault(); // cancel submit 
    var abuse = $('#report_abuse :selected').text(), 
     remark = $('#motive').val(), 
     uid = $(this).data("uid"), 
     vid = $(this).data("vid"); // where are they used? 
    alert("uid:"+uid+" - vid:"+vid); 
    $.ajax({ 
     type: "POST", 
     url: "tpl/main/process.php", 
     data: { abuse_data : abuse, remark_data : remark }, 
     success: function(data){ 
     alert('successful'); 
     } 
    }); 
    }); 
}); 

использованием

<?php if(isset($_SESSION['user_id'])) { 
    $uid = $_SESSION['user_id'];  
    $vid = $_SESSION['seen'];  
} ?> 
<input type="button" name="save" id="save" value="Save" 
data-uid="<?php echo $uid ?>" data-vid="<?php echo $vid ?>" /> 
+0

Я не получаю никакого значения для uid и vid – Durga

+0

Это не полезный комментарий. Какую ценность вы не получаете, когда и где. У вас есть консольные сообщения, возможно, я сделал опечатку – mplungjan

-1
  • предупреждение как uid, так и vid и проверить, какие значения вы получаете, я думаю, что вы получаете неопределенные
+0

Как он сказал. Конечно, он становится неопределенным, значения не передаются – mplungjan