0

我正在研究 ajax,ajax 函数工作正常,但问题是打破三个 div 之间的 ajax 响应。让我详细解释一下。

1.我有一个页面,我有一个选择框和三个输入,并且onchange事件我想要输入框中的 ajax 值。

为了进一步解释,这里是我的代码(Ajax 响应):

<?php
include("include/config.php");
$enrol=$_GET['q'];
$query=mysqli_query($con,"select * from dbo_tbmembermaster where vc_enrol_no='$enrol'");
$result=mysqli_fetch_assoc($query);
$mem_id=$result['nu_member_id'];
$result['nu_member_id'];
$query2=mysqli_query($con,"select SUM(nu_amount) as amt_sub from dbo_tbmemberdues where nu_member_id='$mem_id' and vc_due_for='Subscription'");
$result2=mysqli_fetch_assoc($query2);
echo '<div id="d1">';
echo $amt_sub=$result2['amt_sub'];
echo '</div>';

$query3=mysqli_query($con,"select SUM(nu_amount) as amt_fund from dbo_tbmemberdues where nu_member_id='$mem_id' and vc_due_for='Employees Welfare Fund'");
$result3=mysqli_fetch_assoc($query3);
echo '<div id="d2">';
echo $amt_fund=$result3['amt_fund'];
echo '</div>';

$query4=mysqli_query($con,"select SUM(nu_amount) as amt_fund from dbo_tbmemberdues where nu_member_id='$mem_id' and vc_due_for='Cause List'");
$result4=mysqli_fetch_assoc($query4);
echo '<div id="d3">';
echo $amount=$result4['amt_fund'];
echo '</div>';
?>

现在这是我的回复,请注意这里我在三个不同的 div 中有一些值<div id="d1">,<div id="d2">,<div id="d3">

2.现在我通过 Id 在我的页面上收到此响应<div id="result"></div>。因此,在 Ajax 调用之后,我的页面上有 d1、d2、d3 以及这些 div 的值,我试图进入三个输入框。我通过 javascript 执行此操作:

function showdues()
{
var aa=document.getElementById("d1").innerHTML;
//alert("vhsgfhsg");
document.getElementById("sub_due").value=aa;
}

我正在通过onchange这样的方式调用 ajax 函数和这个函数<select name="dues" onchange="Javascript: showUser(dues.value);showdues();">,但是 ajax 函数正在工作,但这不起作用,我没有在输入框中输入任何内容。

这样做可能是一个奇怪的想法,但我会尽我最大的努力和你的任何想法,我缺少什么以及我应该做什么..如果有更好的想法请告诉我....

提前致谢。

4

2 回答 2

0

目前尚不完全清楚问题出在哪里,但您可以采取两种方法:

  1. 从 php 返回所有 html 并立即替换包含框(包含所有三个选择)的所有内容;
  2. 返回一个 json 字符串,其中包含有关三个选择框的信息,并在 javascript 中构建/选择性地替换 html。

(当然,您也可以将两者结合使用)。

你有一个sql注入问题。

于 2013-08-17T10:27:58.427 回答
0

最简单的方法是

  1. 从您的流程页面获取 3 个输入框的数据,作为由某个唯一值分隔的字符串。例如:假设 3 个结果是:45、56、78。这里的逗号[ , ] 充当分隔符。
  2. 获取 javascript 变量中的值并根据逗号[ , ]拆分它们。它会给你3个不同的数组。

  3. 现在将每个数组值相应地放在您想要的输入框中。

希望它能给你一些想法

于 2013-08-17T10:55:52.360 回答