$ajax

Catbabylin 2014-04-04 04:05:44
请教大牛, 如何将js中连接的php执行完后的变量$i传到A.php,让其中被注释掉的那块调用?
还有,在$ajax中success是怎么运行的,回调的是什么值?
谢谢

A.php

<form id="displayAAPtds" name="displayAAPtds">
<p>
<label>Vehicle Segment:</label>
<select id="vehiclesegment" name="vehiclesegment" required="">
<option value="">Select a Segment...</option>
<option value="BASE">BASE</option>
<option value="VALUE">VALUE</option>
<option value="PREMIUM">PREMIUM</option>
</select>
</p>
<p>
<label>Year:</label>
<select id="anneeAAP" name="anneeAAP" required="">
<option value="">Select...</option>
<option value="2014">2014</option>
<option value="2105">2015</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
<option value="2018">2018</option>
</select>
</p>
</form>
<div class="fieldset" style="position: relative; width: 100%;left: 0%">
<fieldset>
<legend>
AAP Assumptions
</legend>
<div id="generalDisplayAAP" class="fieldset" style="position: responsive; width: 2%;left: 0%">
<!---?php
$filename="classfiles/AAPvaleurs.txt";
$file_hwnd=fopen($filename,"r");
$content = fread($file_hwnd, filesize($filename));
fclose($file_hwnd);
$vAAP = unserialize($content);
?--->
<fieldset>
<p>
<label></label>
<label>Budget</label>
</p>
<p><label>Product Line:</label></p>
<p><label>Design:</label></p>
<p><label>Technology Engineering:</label></p>
<p><label>Simulation:</label></p>
<p><label>IMDS</label></p>
<p><label>Geometry Testing</label></p>

</p>
</fieldset>
<!---fieldset>
<p>
<label></label>
<label>Budget</label>
<p>
<label>Product Line:</label>
<span id="productLineBudget" name="dproductLineBudget"> <?php echo $vAAP[$i] ?> </span>

</p>
<p>
<label>Design:</label>
<span id="designBudget" name="designBudget"> <?php echo $vAAP[$i+5] ?> </span>

</p>
<p>
<label>Technology Engineering:</label>
<span id="techEngineeringBudget" name="techEngineeringBudget"> <?php echo $vAAP[$i+10] ?> </span>

</p>
<p>
<label>Simulation:</label>
<span id="simulationBudget" name="simulationBudget"> <?php echo $vAAP[$i+15] ?> </span>

</p>
<p>
<label>IMDS</label>
<span type="text" id="imdsBudget" name="imdsBudget"> <?php echo $vAAP[$i+20] ?> </span>

</p>
<p>
<label>Geometry Testing</label>
<span id="geometryTestingBudget" name="geometryTestingBudget"> <?php echo $vAAP[$i+25] ?> </span>

</p>
</fieldset--->
</div>
<div id="target" onClick="ShowBudgetFunction()" class="fieldset"">
<fieldset>
<p>
<label></label>
<label></label>
<label>Target</label>
</p>
<p>
<label>Product Line:</label>
<input type="text" class="target" id="productLineTarget" name="productLineTarget" />
</p>
<p>
<label>Design:</label>
<input type="text" class="target" id="designTarget" name="designTarget" />
</p>
<p>
<label>Technology Engineering:</label>

<input type="text" class="target" id="techEngineeringTarget" name="techEngineeringTarget" />
</p>
<p>
<label>Simulation:</label>

<input type="text" class="target" id="simulationTarget" name="simulationTarget" />
</p>
<p>
<label>IMDS</label>

<input type="text" class="target" id="imdsTarget" name="imdsTarget" />
</p>
<p>
<label>Geometry Testing</label>

<input type="text" class="target" id="geometryTestingTarget" name="geometryTestingTarget" />
</p>
</fieldset>
</div>
<div class="fieldset" style="position: absolute; top:17px; width: 30%;left: 58%">
<fieldset>
<label>Remarks</label>
<p>
<textarea name="remarks" id="remarks" style="height:171px; width:310px;"></textarea>
</p>
</fieldset>
</div>
<script src="./scripts/jquery-1.9.1.min.js"></script>
<script src="./scripts/jquery-ui-1.10.3/ui/minified/jquery-ui.min.js"></script>
<script src="./scripts/jquery-validation-1.11.1-1/dist/jquery.validate.min.js"></script>
<script>
function ShowBudgetFunction(){
var vehiclesegment=$("#vehiclesegment").val();
var anneeAAP=$("#anneeAAP").val();
if (vehiclesegment == ""){alert("Please choose a segment");}
if(anneeAAP == ""){alert("Please choose a year");}

var request = $.ajax({
url:"AAPbudget.php",
type: "POST",
dataType: "json",
cache: false,
data:{vehiclesegment:vehiclesegment,anneeAAP:anneeAAP},
success: function(msg){
alert("success function");
alert(msg);
//var i=$i;
}
});

}
</script>



B.php

<?php
$vehiclesegment=$_REQUEST['vehiclesegment'];
$anneeAAP=$_REQUEST['anneeAAP'];


if ($vehiclesegment=="PREMIUM"){
if($anneeAAP=="2014"){$i=0;}
elseif($anneeAAP=="2015"){$i=1;}
elseif($anneeAAP=="2016"){$i=2;}
elseif($anneeAAP=="2017"){$i=3;}
elseif($anneeAAP=="2018"){$i=4;}
}
elseif ($vehiclesegment=="VALUE"){
if($anneeAAP=="2014"){$i=30;}
elseif($anneeAAP=="2015"){$i=31;}
elseif($anneeAAP=="2016"){$i=32;}
elseif($anneeAAP=="2017"){$i=33;}
elseif($anneeAAP=="2018"){$i=34;}
}
elseif ($vehiclesegment=="BASE"){
if($anneeAAP=="2014"){$i=60;}
elseif($anneeAAP=="2015"){$i=61;}
elseif($anneeAAP=="2016"){$i=62;}
elseif($anneeAAP=="2017"){$i=63;}
elseif($anneeAAP=="2018"){$i=64;}
}

?>
...全文
103 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Catbabylin 2014-04-04
  • 打赏
  • 举报
回复
嘿嘿,那个是网上搜到了方法,就直接用了,菜鸟一枚.sorry echo json_encode是写了之后,会显示在哪里呢.网页上还是没有显示耶 我有另外一个想法能不能把处理完的B.php中的变量i发给A的filedset处理呢?
xuzuning 2014-04-04
  • 打赏
  • 举报
回复
不是 php 吗?怎么用 .net 的写法? echo json_encode($i); 检查传入数据?这样做 echo json_encode($_REQUEST); 正确的话,alert($i); 应显示 {"vehiclesegment":"vehiclesegment的值","anneeAAP":"anneeAAP的值"}
Catbabylin 2014-04-04
  • 打赏
  • 举报
回复
恩.我发现了
我在B.php最后一行加了

response.getWriter().print($i);

把A里的dataType改为"text"

$.ajax({
url:"AAPbudget.php",
type: "POST",
dataType: "text",
cache: false,
data:{vehiclesegment:vehiclesegment,anneeAAP:anneeAAP},
success: function($i){
alert($i);
}

还是没有显示任何东西,我现在想要分段测试, 想先看看data有没有传给B.再测试返回,要怎么办呢
xuzuning 2014-04-04
  • 打赏
  • 举报
回复
1、你的 B.php (也就是 AAPbudget.php)没有任何输出,所以你的 A.php 不会有任何动作 2、$.ajax 有 dataType: "json" 属性,但你的 B.php 没有输出 json 格式数据,所以 success 不会进入

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧