[英]refresh the page without redirecting
我在文件form.php中有一個這樣的搜索表單。 它工作得很好,我面臨的問題是我使用了類/方法(函數)。 例如,我有調用徽標和菜單欄的此方法。
//$this->output is just a method that echos, that's all it does
function header()
{
$this->output('<DIV CLASS="header">');
$this->logo();
include('form.php');
$this->links();
$this->header_clear();
$this->output('</DIV>');
}
像上面一樣,該表單顯示得很完美,但是當我選擇一個類別時,它將帶我到form.php,並且它毀了一切。 (form.php只是一種形式)
我知道問題在這里
onChange="javascript:this.form.action='form.php';
this.form.submit()
沒有javascript,我無法獲取類別值,頁面無法刷新,因此$ _POST ['cat']為空。
有什么更好的方法可以刷新頁面而不帶我去其他地方?
我知道這一切都令人困惑,請忍受我。
<form enctype="multipart/form-data" name="form" id="form" action="form.php"
method="get">
<SELECT name="cat" onChange="javascript:this.form.action='form.php';
this.form.submit()">
<option value="" >Categories</option>
<?php
$z = "0" ;
//Select categories form database
$category =db_select_categories($z);
if(is_array($category))
{
foreach($category as $rowc)
{
$id_cat = htmlentities($rowc['id_cat'], ENT_QUOTES);
$cat_name = htmlentities($rowc['cat_name'], ENT_QUOTES, 'utf-8');
$cat_name = stripslashes($cat_name);
echo "<option style=\"background-color:#FFCC99\" disabled>".$cat_name."
</option>";
$categories = db_select_categories($id_cat);
if(is_array($categories))
{
foreach($categories as $row)
{
$id = htmlentities($row['id_cat'], ENT_QUOTES);
$name = htmlentities($row['cat_name'], ENT_QUOTES, 'utf-8');
$name = stripslashes($name);
if ( $cat == $id )
{
echo "<option value='".$id."'selected> ".$name."</option>";
}
else
{
echo "<option value=".$id."> ".$name."</option>";
}
}
}
}
}
echo "</SELECT>";
?>
<div>
<?php
if(!empty($cat))
{
//Outputs a populated select option depending on category
display_search_options($cat);
}
?>
</div>
如果您不希望它形成,只需將其放在其他地方即可...
onChange="javascript:this.form.action='index.php';
this.form.submit()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.