您好我试图在刷新页面后将所选值保留在我的下拉列表中。
这是我的代码。
<form action="" method="post">
<select name="location[]" onchange='this.form.submit()'>
<option name="500" <?php echo ($_POST['location'] == '500') ? ' selected="selected"' : ''; ?> value="500">DE (19% MwSt)</option>
<option name="100" <?php echo ($_POST['location'] == '100') ? ' selected="selected"' : ''; ?> value="100">IT (22% MwSt)</option>
<option name="1500" <?php echo ($_POST['location'] == '1500') ? ' selected="selected"' : ''; ?> value="1500">CH (0% MwSt)</option>
</select>
<noscript><input type="submit" value="Submit"></noscript>
</form>
但这不起作用。
如果我删除了选择名称中的[]
,则在刷新页面后会保存所选的值,但该表单不再起作用。
如果我将[]
添加到$_POST['location']
,则刷新后不会保存所选的值。
有什么建议?感谢
答案 0 :(得分:0)
不是解决方案,而是替代方法。
如果您使用AJAX提交表单,该怎么办?您不需要在提交时刷新页面(假设这是您的问题),这样您就不需要刷新页面了。
我建议使用jquery。如果你需要,我可以为你提供一个例子。
为了使用ajax提交数据,您需要在html中包含Jquery。 Jquery
现在你可以做这样的事了。
$("#submit").click(function(){
//When element with id=submit is clicked execute this code
$.ajax({
Type:"POST",
url: "yourphpfile.php",
//at data: You can add your own strings
data: {Data: "The data you want to send"},
success: function(){
//this gets executed when ajax succeeds
alert("great succes");
}
});
});
您可以使用$ _POST
在PHP中访问数据$String = $_POST['Data'];
在这种情况下,它将是:“您要发送的数据”。
我希望这能让你开始。