从ID获取sesult并添加到JS中的另一个ID

时间:2018-03-02 07:38:50

标签: javascript html

我希望变量a中的值显示在div id" final-total" 这是我的index.php

<form action='index.php' method='POST'>
<table class='table table-bordered table-condensed'>
<tr>
<th class='text-center' width='12%'>Code</th>
<th class='text-center' width='12%'>Qty</th>
<th class='text-center' width='40%'>Item</th>
<th class='text-center' width='18%'>Rate</th>
<th class='text-center' width='18%'>Total</th>
</tr>
<tr>
<td>
<input type='text' name='code1' id='code1' size='4' class='text-center'>
</td>
<td>
<input type='text' name='qty1' id='qty1' size='5' class='text-center'>
</td>
<td>
<div id='item1'></div>
</td>
<td>
<div id='rate1'></div>
</td>
<td>
<div id='total1'></div>
</td>
</tr>
<tr>
<td colspan='3' class='text-left'><b>Total:</b></td>
<td colspan='2'>
<b><div id='final-total'></div></b>
</td>
</tr>
</table>

这是我的js / global.js

$('input#code1').on('input', function(){
var name = $('input#code1').val();
if ($.trim(name) != ''){
$.post('ajax/item1.php', {code1: name}, function(data){
$('div#item1').text(data);
});
}
});
$('input#code1').on('input', function(){
var name = $('input#code1').val();
if ($.trim(name) != ''){
$.post('ajax/rate1.php', {code1: name}, function(data){
$('div#rate1').text(data);
});
}
});
$('input#qty1').on('input', function(){
var name = $('input#code1').val();
var qty = $('input#qty1').val();
if ($.trim(name) != ''){
$.post('ajax/ttl1.php', {code1: name, qty1: qty}, function(data){
$('div#total1').text(data);
});
}
});

var a = document.getElementById('div#ttl1').value;
document.getElementById("final-total").innerHTML = a;

js / global.ls中的最后两行无法正常工作

这就是我的item1.php看起来像

<?php
if(isset($_POST['code1']) === true && empty($_POST['code1']) === false) {
include('../db/connect.php');
$query = mysql_query("
SELECT `item_name` FROM `ftd_stock_v10.3` WHERE `code` = '".mysql_real_escape_string(trim($_POST['code1']))."'");
echo (mysql_num_rows($query) !== 0) ? mysql_result($query, 0, 'item_name') : 

&#39;找不到物品&#39; ;     }

这是rate1.php

<?php
if(isset($_POST['code1']) === true && empty($_POST['code1']) === false) {
include('../db/connect.php');
#checking for stock availability
$stmt = $conn -> prepare("SELECT `old_stock_bal` FROM `ftd_stock_v10.3` WHERE `code` = ?");
$stmt -> bind_param("s",$_POST['code1']);
$stmt -> execute();
$stmt -> bind_result($old_stock);
$stmt -> fetch();
$stmt -> close();
if($old_stock > 0){
$query = mysql_query("
    SELECT `old_rate` FROM `ftd_stock_v10.3` WHERE `code` = '".mysql_real_escape_string(trim($_POST['code1']))."'");
echo (mysql_num_rows($query) !== 0) ? mysql_result($query, 0, 'old_rate') : '0.000' ;
}else{
$query = mysql_query("
    SELECT `new_rate` FROM `ftd_stock_v10.3` WHERE `code` = '".mysql_real_escape_string(trim($_POST['code1']))."'");
echo (mysql_num_rows($query) !== 0) ? mysql_result($query, 0, 'new_rate') : '0.000' ;
}
}

这是我的ttl1.php

<?php
if(isset($_POST['code1']) === true && empty($_POST['code1']) === false) {
include('../db/connect.php');
#checking for stock availability
$stmt = $conn -> prepare("SELECT `old_stock_bal` FROM `ftd_stock_v10.3` WHERE `code` = ?");
$stmt -> bind_param("s",$_POST['code1']);
$stmt -> execute();
$stmt -> bind_result($old_stock);
$stmt -> fetch();
$stmt -> close();
if($old_stock > 0){
$query = mysql_query("
    SELECT `old_rate` FROM `ftd_stock_v10.3` WHERE `code` = '".mysql_real_escape_string(trim($_POST['code1']))."'");
echo (mysql_num_rows($query) !== 0) ? mysql_result($query, 0, 'old_rate') * 
$_POST['qty1'] : '0.000' ;
}else{
$query = mysql_query("
    SELECT `new_rate` FROM `ftd_stock_v10.3` WHERE `code` = '".mysql_real_escape_string(trim($_POST['code1']))."'");
echo (mysql_num_rows($query) !== 0) ? mysql_result($query, 0, 'new_rate') * 
$_POST['qty1'] : '0.000' ;
}
}

我希望div为#&#34; final-total&#34;得到qty1 * rate1的结果,直到qty10 * rate10,(全部加上总和)

注意这些是我的文件

index.php
js/global.js
db/connect.php

ajax/item1.php
.
.
ajax/item10.php

ajax/rate1.php
.
.
ajax/rate10.php

ajax/ttl1.php
.
.
ajax/ttl10.php

2 个答案:

答案 0 :(得分:0)

如果元素存在于DOM中,则主要问题在于此行

var a = document.getElementById('div#ttl1').value;

我认为它是

&#13;
&#13;
var a = document.getElementById('ttl1').value;
document.getElementById("final-total").innerHTML = a;
&#13;
<input type="text" id="ttl1" value="x">

<div id="final-total"></div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您不能像这样使用getElementById(),您需要使用querySelector()功能来查找此项目。

var a = document.querySelector('div#ttl1').innerHTML;
document.getElementById("final-total").innerHTML = a;
<div id="ttl1">Hello</div>

<div id="final-total"></div>

或者,如果您想使用getElementById()功能,则必须仅指定ID,例如:getElementById('ttl1')