2015-01-09 4 views
1

Как передать значение формы, а также идентификатор пользователя в ajax?Как передать значение формы и индивидуальное значение через AJAX?

JavaScript:

jQuery("#DoneBtn").click(function(){ 
    var data = $("#insertsubs_form").serialize(); 
    <?php 
     $db = JFactory::getDBO(); 
     $user = JFactory::getUser(); 
    ?> 
    var userid = <?php echo $user->id; ?> 
    $.ajax({ 
     data: { 
      data:data, 
      userid : userid 
     }, 
     type: "post", 
     url: "../insert_subs.php", 
     success: function(data){ 
       alert(data); 
     } 
    }); 
}); 

в insert_subs.php:

$userid = $_GET['userid']; 

**** ОЦЕНЕНО Ананд Патель, Deena. Обе те же самые ответы, которые я хочу! : D Также спасибо epascarello! Я не пробовал это, но я думаю, что это работает. :)

ответ

1

попробовать это

 jQuery("#DoneBtn").click(function(){ 

      <?php 
       $db = JFactory::getDBO(); 
       $user = JFactory::getUser(); 
      ?> 
      var userid = <?php echo $user->id; ?>; 

      var data = $("#insertsubs_form").serialize() + "&userid=" + userid; 


      $.ajax({ 
       data: data, 
       type: "post", 
       url: "../insert_subs.php", 
       success: function(data){ 
        alert(data); 
       } 
      }); 
     }) 
1

Попробуйте это ...

var userid = <?php echo $user->id; ?> 
$.ajax({ 
    type : 'POST', 
    url : '../insert_subs.php', 
    data : $('#form').serialize() + "&userid=userid" 
}); 
1

Попробуйте использовать serializeArray:

var data = $('#insertsubs_form').serializeArray(); 
data.push({name: 'userid', value: userid }); 
$.ajax({ 
    data: data, 
    type: "post", 
    url: "../insert_subs.php", 
    success: function(data){ 
    alert(data); 
} 

или вы можете использовать serializeObject

var data = $('#insertsubs_form').serializeObject(); 
$.extend(data, {'userid': userid }); 
$.ajax({ 
    data: data, 
    type: "post", 
    url: "../insert_subs.php", 
    success: function(data){ 
    alert(data); 
} 

или вы можете использовать сериализации и параметры

var data = $('#form').serialize() + $.param({"userid":userid}); 
$.ajax({ 
    data: data, 
    type: "post", 
    url: "../insert_subs.php", 
    success: function(data){ 
    alert(data); 
} 

или лучшее решение просто добавить скрытое поле в форме с идентификатором пользователя и использовать сериализации!

<input name="userid" type="hidden" value="<?php echo $user->id; ?>" /> 
Смежные вопросы