我有表单提交,因为它是一个简单的
onchange="submit();"
<div class="cities">Select City <form method="post" action="<?php echo $PHP_SELF;?>" style="float:right;"><select name="city_select" id="city_select" onchange="submit();"><option>-----</option>
<option value="Beijing" <?php if($_SESSION['city_selected'] == 'Beijing') { echo 'selected=selected';} else { echo ''; }?> >Beijing</option>
<option value="Shanghai" <?php if($_SESSION['city_selected'] == 'Shanghai') { echo 'selected=selected';} else { echo ''; }?> >Shanghai</option>
<option value="Guangzhou" <?php if($_SESSION['city_selected'] == 'Guangzhou') { echo 'selected=selected';} else { echo ''; }?> >Guangzhou</option>
<option value="Manila" <?php if($_SESSION['city_selected'] == 'Manila') { echo 'selected=selected';} else { echo ''; }?> >Manila</option>
<option value="HongKong" <?php if($_SESSION['city_selected'] == 'HongKong') { echo 'selected=selected';} else { echo ''; }?> >Hong Kong</option>
<option value="Tokyo" <?php if($_SESSION['city_selected'] == 'Tokyo') { echo 'selected=selected';} else { echo ''; }?> >Tokyo</option>
<option value="Seoul" <?php if($_SESSION['city_selected'] == 'Seoul') { echo 'selected=selected';} else { echo ''; }?> >Seoul</option>
<option value="Taipai" <?php if($_SESSION['city_selected'] == 'Taipai') { echo 'selected=selected';} else { echo ''; }?> >Taipai</option>
</select></form>
<div style="clear:both;"></div>
</div>
我正在尝试提交表单并重定向到网址。我想知道这是否可行。我已经尝试实现了一个jquery $ .change事件,但它没有在表单submit()
之前触发如果有人可以提供帮助,那就太棒了。谢谢!
答案 0 :(得分:0)
你的提交功能在哪里?
你能尝试这样吗
<select name="city_select" id="city_select" onchange="this.form.submit();">
应该有效
答案 1 :(得分:0)
您尚未显示提交功能的作用,但如果它提供了正常的表单提交(不是AJAX),那么您需要稍后重定向。
通常情况下,您可以正常提交表单,然后在下一页加载时,该页面会设置一个“位置”标题,告诉浏览器重定向。
例如,在表单提交时运行的任何PHP代码中,您都需要通过执行以下操作重定向:
header('Location', 'http://mysite.com/page-to-redirect-to.php');
答案 2 :(得分:0)
您只需要“Jquery Form Plugin”
http://jquery.malsup.com/form/#ajaxForm
使用此插件,表单会在不离开页面的情况下提交“操作”地址。完成后,您可以使用回调函数重定向。
<script>
$(document).ready(function(){
$('#FORM_ID').ajaxForm(function(data) {
window.location="http://www.REDIRECT_URL.com/";
});
});
</script>
如果你需要这个onchange,你可以使用这个:
<script>
$(document).ready(function(){
$('#FORM_ID').ajaxForm(function(data) {
window.location="http://www.REDIRECT_URL.com/";
});
$('#city_select').change(function(){
$('#FORM_ID').trigger('submit');
});
});
</script>
答案 3 :(得分:0)
只需在php中执行:
header('Location: ' . the_url_to_redirect);
答案 4 :(得分:0)
if(isset($_POST['city_select'])) {
$_SESSION['city_selected'] = $_POST['city_select'];
if($_POST['city_select'] == "Beijing") {
header("Location: /city-beijing/");
}
if($_POST['city_select'] == "Shanghai") {
header("Location: /city-shanghai/");
}
if($_POST['city_select'] == "Guangzhou") {
header("Location: /city-guangzhou/");
}
if($_POST['city_select'] == "Manila") {
header("Location: /city-manila/");
}
if($_POST['city_select'] == "HongKong") {
header("Location: /city-hong-kong/");
}
if($_POST['city_select'] == "Tokyo") {
header("Location: /city-tokyo/");
}
if($_POST['city_select'] == "Seoul") {
header("Location: /city-seoul/");
}
if($_POST['city_select'] == "Taipai") {
header("Location: /city-taipai/");
}
else{
}
}
这对我有用:),干杯。