是否可以使用php来计算某些内容并使用jquery来获取计算结果 值并将其显示回网页而无需提交表格。 我在使用客户端来计算使用数组的东西时遇到了麻烦。所以我想让php进行计算。
<input type="hidden" name=ids[] value="<?php $id; ?>">
<input type="hidden" name=qoh[] value="<?php $qtyhand; ?>">
<input type="hidden" name=dprice[] value="<?php $dsprice; ?>">
<input type="hidden" name=sprice[] value="<?php $ssprice; ?>">
<td>$qtyhand</td>";
<td><input type="text" name=qbuys[] value="<?php echo $ssprice; ?>"></td>
<td><?php $ssprice; ?></td>";
<td><input type="text" name=disc[] value=""></td>
<td><input type="text" name=subtot[] value=""></td>
这是应该用于计算的php文件。
<?php
$ctbill=0;
foreach ($_GET['ids'] as $k => $v) {
$id = (int)$v;
$qtyhnd = (int)$_GET['qoh'][$k];
$qtytbuy = (int)$_GET['qbuys'][$k];
$left = $qtyhnd - $qtytbuy;
$sellprice=(double)$_GET['sprice'][$k];
$dealerprice=(double)$_GET['dprice'][$k];
$finalvalue=.01;
$dis=(double)$_GET['disc'][$k];
$stotal=(double)$qtytbuy * $sellprice;
$cdizval=(double)$stotal * $dis * $finalvalue;
$cdstotal=$stotal-$cdizval;
$ctbill=(double)$ctbill + $cdstotal;
$dizval=$dis * $finalvalue;
$preprof=(($sellprice * $qtytbuy)-($dealerprice*$qtytbuy)) * $dizval;
$profit=(($sellprice * $qtytbuy)-($dealerprice*$qtytbuy)) - $preprof;
?>
你能告诉我如何做到这一点。
答案 0 :(得分:1)
是。查看jquery手册,了解如何发出ajax请求并显示结果的示例:
答案 1 :(得分:1)
使用ajax并在回调中设置这些值。
jQuery的ajax函数包括$ .get,$ .post,$。load,$ .ajax。您可能应该使用POST bc传递参数,似乎您想要传递一些数组,而GET不适合它。那个PHP文件应该回应你需要的东西,并且根据它的复杂性,你可能希望它是JSON使用的JSONencode而不仅仅是一个普通的字符串。
$.post('/url.php', {data1: 'literal', data2: variable, ....}, function($x){--display==});
url.php是处理它的PHP文件 第二个论点是即将到来的数据 第三个参数是回调函数,$ x是url.php echos
http://api.jquery.com/category/ajax/
http://www.visualjquery.com
答案 2 :(得分:1)
加载本身通常就像
一样简单$("#output").load("compute.php?ids[]=1111&ids[]=2222");
您的案例的复杂性是从表单字段中汇集各种URL参数。通常,您可以传递一个简单的Javascript数组/哈希作为数据参数。但JS数组和默认的jQuery .load处理程序不适用于您拥有的重复PHP样式var[]
字段名称。
你最好的办法是建立一个循环,我想是手动完成的。 (但可能有插件,所以尝试谷歌和jQuery插件库。)