0

简单的问题:我只想发送item_num到 insert_profile.php,然后加载 insert_profile.php 并在那里回显item_num。它不工作!'insert_profile.php' 将加载,但它没有获取数据。

是我的问题data:吗?我也试过了data: {item_num: item_num}。如果这是重复的,我很抱歉,但我已经尝试了我见过的所有示例,但没有一个有效。我认为它也可能在success:

我还查看了http://api.jquery.com/jQuery.ajax/

Javascript/HTML

 <script>

$('.prof_wl_btn').click(function() { 
$(this).removeClass('prof_wl_btn');
$(this).addClass('prof_wl_btn_added');
  var item_num = this.id;
  alert('item id    ' + item_num); //*this will alert correctly*
  $.ajax({
      type: "POST",
      url:'insert_profile.php',
      data: "item_num"+item_num,   
      success: location.href = "insert_profile.php" //*this will load**   
  });
});
</script>

PHP

<?php
$s_n = $_REQUEST['item_num'];
echo $s_n;
?>
4

2 回答 2

1

您不能以这种方式回显变量,因为您对同一页面有两个不同的请求:

  • 第一个是 AJAX 请求,当您将数据发送到您执行某些操作并返回的页面时;
  • 第二个当你访问insert_profile.php页面时,你的价值就丢失了。

如果你想看到你的值被回显,你可以这样做:

AJAX 调用应如下所示:

    $.ajax({
      type: "POST",
      url:'insert_profile.php',
      data: {item_num : item_num},   
      success : function(data) {
         alert(data);  
      }
  });

然后你的 PHP 文件:

<?php $s_n = $_POST['item_num']; 
  echo $s_n;
  exit;
?>
于 2013-08-13T13:31:01.933 回答
0
$.ajax({
      type: "POST",
      url:'insert_profile.php',
      data: "item_num = "+item_num,   
      success : function( data ) {
         // location.href = "insert_profile.php" //*this will load** 
         alert(data);  
      }
  });

在PHP代码中你这样做并检查

<?php
echo 'OK';
于 2013-08-13T13:17:25.657 回答