在同一页面上使用ajax帖子的Jquery自动完成小部件

时间:2015-11-04 14:12:33

标签: javascript php jquery ajax

我的代码无法找到问题。在第二页(page2.php)上,变量$ productid不存在(为空)。 更新:我忘了提到我有session_start();在page1.php和page2.php的开头。

在第一页ex: page1.php 我有这个:

$(function() {
    $( "#product" ).autocomplete({
        source: 'searchproduct.php',
		select: function (event, ui) {
			var lbl = ui.item.label;
			var value = ui.item.value;
		   //store in session
		     $.ajax({
                    type: "POST",
                    url: 'page1.php',
                    data: { value : value },
                    success: function(data)
                    {
						$('#productform input[name="jProductID"]').val(value);
						$("#productform").submit();
                    }
                });

		}
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

<?php
$productid = $_POST['jProductID'];
$_SESSION['Sproductid'] = $productid;
?>

<form method="post" action="page2.php" id="productform">
 <input type="hidden" name="jProductID" value="productID" />
<label for="product">Produs: </label>
<input id="product" name="productid" id="productid">
<input type="submit" value="Adauga">
</form>

在第二页ex: page2.php 我有这个:

$productid = $_SESSION['Sproductid'];
echo $productid;

注意:我对php和javascript都很陌生,所以任何建议都会受到赞赏。

1 个答案:

答案 0 :(得分:0)

解决了,代码是正确的,我的代码的其他部分出错了,我发布的所有代码都在if(isset($ _ GET [&#39; ...&#39;])中){}这是假的。谢谢你的回答。

只是为了确定我已经取代了

<?php
$productid = $_POST['jProductID'];
$_SESSION['Sproductid'] = $productid;
?>

<?php
$productid = $_POST['value'];
$_SESSION['Sproductid'] = $productid;
?>

我删除了

<input type="hidden" name="jProductID" value="productID" />

$('#productform input[name="jProductID"]').val(value);