发送 Ajax 表格 select 改变

我需要发送表格来改变选择。 我有一个形式。


<form action="modules/submit.php" id="form" method="post" name="form">
<select id="category" name="category" onchange="this.form.submit//;" size="12">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<select id="subcategory" name="subcategory" size="12">
</select>
</form>


JS:


$/document/.ready/function//{
$/'#form'/.submit/function// {
select//;
e.preventDefault//;
}/;

}/;


function select//
{
error/0/;

$.ajax/{
type: "POST",
url: "modules/submit.php",
data: $/'#form'/.serialize//,
dataType: "json",
success: function/msg/{
if/parseInt/msg.status/==1/
{
window.location=msg.txt;
}
else if/parseInt/msg.status/==0/
{
result/1,msg.txt/;
}
}
}/;

}

function result/act,txt/
{
if/txt/ $/'#subcategory'/.html/txt/;
}


submit.php:


if/isset/$_POST['category']//{
die/msg/0,"<option value="0">Trololo</option>"//;
}
function msg/$status,$txt/
{
return '{"status":'.$status.',"txt":"'.$txt.'"}';
}


当我更改选择的形式时,它会转向并重定向到文件 submit.php.
我需要获得结果选择子类别。
已邀请:

窦买办

赞同来自:

试试吧:


$/'#category'/.change/function// {

$/'#form'/.submit//;

}/;


此外,您的代码无法阻止默认操作发送表单,因为您没有传递参数。
event

功能。


$/'#form'/.submit/function/e/ { //Note the e!!
e.preventDefault//;
select//;
}/;

詹大官人

赞同来自:

你的表格总是去,因为你没有通过
e

作为一个论点,船舶处理程序:


$/'#form'/.submit/function/e/ {
e.preventDefault//;
select//;
}/;


此外,我会改变功能
msg

在此:


function msg/$status,$txt/
{
return array/'status' => $status, 'text' => $text/;
}


并打电话:


if/isset/$_POST['category']//{
die/json_encode/msg/0,"<option value="0">Trololo</option>"///;
}

要回复问题请先登录注册