我在这里尝试做的是我有5个输入域,每个输入域都有自己的Lane-1,Lane-2,Poly-1,Poly-2,Poly-3的总权重,这些权重将由数据库中的内容显示……我可以用5个不同的JS函数和5个单独的php文件和SQL语句来实现这一点,但我更愿意在一个结构或一个文件和一个JS函数中完成这一切,如果可能的话?你知道我该怎么做吗?我让它只工作于SQL语句的"else“部分,但我需要获取与其他车道类型(lead-2、Poly1等)相关的其他数据。提前感谢!
我甚至不能说我做的任何事情都是对的,所以请随意惩罚我。
HTML
<body onload="getLaneWeight();">
<form id="Warehouse_Worksheet" name="Warehouse_Worksheet">
<table align="center">
<tbody>
<tr>
<th>
Lane Types
</th>
<th>
Total Weight
</th>
</tr>
<tr>
<td>
Lead 1
</td>
<td>
<input type="text" name="Lead-1" readonly="readonly" />
</td>
</tr>
<tr>
<td>
Lead 2
</td>
<td>
<input type="text" name="Lead-2" readonly="readonly" />
</td>
</tr>
<tr>
<td>
Poly 1
</td>
<td>
<input type="text" name="Poly-1" readonly="readonly" />
</td>
</tr>
<tr>
<td>
Poly 2
</td>
<td>
<input type="text" name="Poly-2" readonly="readonly" />
</td>
</tr>
<tr>
<td>
Poly 3
</td>
<td>
<input type="text" name="Poly-3" readonly="readonly" />
</td>
</tr>
</tbody>
</table>
</form>
</body>JS文件
//Populate Lane Type Weight Table
function getLaneWeight() {
$.ajax({
type: 'GET',
url: './php/getLaneWeight.php',
data: 'lane_name=Lead-1',
success: function (mydata) {
document.forms['Warehouse_Worksheet'].elements['Lead-1'].value = mydata;
},
error: function () {
},
complete: function () {
getLead2();//Call next Lane Type
}
});
};
//Set Next Lane Weight
function getLead2() {
$.ajax({
type: 'GET',
url: './php/getLaneWeight.php',
data: 'lane_name=Lead-2',
success: function (mydata) {
document.forms['Warehouse_Worksheet'].elements['Lead-2'].value = mydata;
//alert(document.forms['Warehouse_Worksheet'].elements['Lead-1'].value);
},
error: function () {
},
complete: function () {
//getPoly1();//Call next Lane Type
}
});
};PHP/SQL
if(isset ($_GET['Poly-2'])){
$sql="SELECT SUM(weight)
FROM bundle_lanes
WHERE lane_name = 'Poly-3'";
}else if(isset ($_GET['Poly-1'])){
$sql="SELECT SUM(weight)
FROM bundle_lanes
WHERE lane_name = 'Poly-2'";
}else if(isset ($_GET['Lead-2'])){
$sql="SELECT SUM(weight)
FROM bundle_lanes
WHERE lane_name = 'Poly-1'";
}else if(isset ($_GET['Lead-1'])){
$sql="SELECT SUM(weight)
FROM bundle_lanes
WHERE lane_name = 'Lead-2'";
}else{
$sql="SELECT SUM(weight)
FROM bundle_lanes
WHERE lane_name = 'Lead-1'";
}
$result = mysql_query($sql) or die ('Error'.mysql_error());
while ($data = mysql_fetch_row($result)) {
$weight = $data[0];
echo $weight;
}发布于 2013-04-16 01:40:25
然后创建一个如下所示的函数
如果你的php代码肯定会得到你想要的数据,那么你可以立即将它插入到下面的函数中。如果您想存储全部5个名称,那么可以使用一个for循环和数组来存储php中的每个名称,例如
$myarray=('string1','string2');
for($i=0;i<$myarray.length;i++){
sqlQuery($myarray[i]);
}
function sqlQuery($lane_name){
$sql
$sql="SELECT SUM(weight)
FROM bundle_lanes
WHERE lane_name = '".$lane_name."'";
$result=.......
//check if data was stored.
echo(<!-- new html code-->);
}这将存储所有5个字段。如果你只想要其中的一个,最好使用开关外壳。如果您的php在同一个文件中,那么只需使用php通过echo生成html即可。您可以插入像这样设置的变量- echo("some text“ajax。”some more text");如果它是一个不同的文件,您将需要在.$myvar中使用ajax来接收数据,并使用一个开关或If else case。例如
if(response=='my response'){
document.getElementById('my textbox').innerHTML(....);
}我的javascript可能不准确,但我希望您能理解。
https://stackoverflow.com/questions/16020954
复制相似问题