2017-04-16 86 views
1

我需要通过对tags.php
index.php到PHP变量一些JS变量 - 不使用表单
- 不使用地址栏
- 并去tags.php通JS变量,另一页上的PHP变量,并转到目标页面

的index.php

$('#m1tags').click(function(){ 
var id = $('.pmarked').data('id'); // an integer 
$.ajax({ 
    url: 'tags.php', 
    type: 'post', 
    data: {'id': id}, 
    success: function() { 

    } 
}); 
location.href='tags.php'; 
}); 

tags.php

<?php echo $_POST['id'];?> 

Notice: Undefined idex: id...

任何帮助吗?

+2

你需要发送一个表单而不是ajax调用!现在你把所有东西都发送到tags.php,但是不用通过变量就可以“刷新”tags.php。 – Jeff

+1

这将有助于:http://stackoverflow.com/questions/133925/javascript-post-request-like-a-form-submit – Jeff

+2

可能重复[JavaScript提交表单提交请求](http:// stackoverflow。 COM /问题/ 133925/JavaScript的请求后样一个形式提交) – Jeff

回答

2

您提出的请求是异步的,这意味着它发生在后台,然后脚本继续在同一页面上执行。您正在发送POST请求,然后使用其他请求重定向用户。

您可以使用JavaScript发送隐藏表单,以便用户在同一请求中随同POST数据一起被重定向。

window.onload = function() { 
 
    var id = 60; 
 
    $("#id-input").val(id); 
 
    $("#tags-form").submit(); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script> 
 
<form id="tags-form" method="POST" action="tags.php"> 
 
<input type="hidden" name="id" id="id-input"> 
 
</form>

0

这里你正在努力使来自未知源 “tag.php” 获得的相关信息。 要发送信息到一个php页面,你需要使用一个表单或url变量。

即使使用ajax url变量并使用post变量(当需要用户的相关信息时)。