これは簡単な問題です。私は顧客やベンダーに関連するPHPプロジェクトに取り組んでいます。データベースからcustomerid
を選択すると、その顧客の未払い請求書が自動的に表に移入されるため、表には小切手、請求書番号、請求額、支払額、および「削除」列が含まれます。ラベル値または表のセル値またはPHPの隠しテキスト値
このリンクを削除すると、その行が削除されるため、一部の請求書に対してのみ支払いが可能です。 (未払いの手形が5枚ある場合は、3枚の手形を取り除き、他の2枚の手形のデータを入力することができます)。ここでは、ラベルとしてbillno
とbillamount
を表示し、額を入力するためのテキストボックスとして支払い金額を表示します。いくつかの行が削除される可能性があるので、billno
をサーバーに送信する必要があります。 PHPの$_POST
はラベルを認識しません。私はtd
のID(テーブルセルID)と入力タイプ "hidden"で試しましたが、うまくいきませんでした。これを行う方法を提案できますか?
表コード:
<TABLE id="mytable1">
<tr>
<th>Select</th>
<th>Bill No</th>
<th>Bill Amount</th>
<th>Received Amount</th>
<th>Remove</th>
</tr>
<TR>
<td ><INPUT type="checkbox" name="chk[]" ></td>
<td ><label id="labelidinv"></label><input type="hidden" name="invhide[]" value="12" ></td>
<TD><label id="labelidinvamt"></label> </TD>
<TD><input name="receivedamt[]" type="text" size="6" id="receivedamt" ></TD>
<td> <a href="#" onClick="deleteRowReceipt('mytable1')">Remove </a> </td>
</TR>
</table>
Ajaxコード:ここで
var inv_id = xmlDoc.getElementsByTagName("inv_id");
var inv_amt = xmlDoc.getElementsByTagName("inv_amt");
var count = xmlDoc.getElementsByTagName("count");
var inv_id_desc = inv_id[0].firstChild.nodeValue;
var inv_amt_desc = inv_amt[0].firstChild.nodeValue;
var countdesc = count[0].firstChild.nodeValue;
document.getElementById('labelidinv').innerHTML =inv_id_desc;
document.getElementById('labelidinvamt').innerHTML=inv_amt_desc;
var table = document.getElementById('mytable1');
for(var j=1;j<countdesc;j++)
{
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var colCount = table.rows[0].cells.length;
for(var i=0; i<colCount; i++)
{
var newcell = row.insertCell(i);
newcell.innerHTML = table.rows[1].cells[i].innerHTML;
if(i==1)
newcell.innerHTML = inv_id[j].firstChild.nodeValue;
if(i==2)
newcell.innerHTML= inv_amt[j].firstChild.nodeValue;
}
}
私はラベルID値を投稿することはできませんよ
は、ここに私のコードです。そんなことをする方法はありますか?ラベルには読み取り専用の値が必要なので、それらをサーバーに戻す必要があります。前もって感謝します。
編集
私はAjaxRequestHandlerページでは、この
var custname = document.getElementById('customer').options[document.getElementById('customer').selectedIndex].value;
xmlhttp.open("POST","../MODEL/AjaxRequestHandler.php?action=custdetails&CUST_NAME="+custname,true)
のようなAJAXリクエストを送信しています。この問題を回避する
$CUST_NAME = $_GET['CUST_NAME'];
$querry1 = "select * from RECEIVABLES where CUSTOMER_NAME = $cust_name and FULL_PART_PAID !='F' and voucher_type='SI' ";
/*full_part_paid column is whether that bill fully paid or not, and voucher type = "Sales invoice"*/
$res1 = odbc_exec($conn,$querry1);
$i = 0;
echo '<?xml version="1.0" encoding="utf-8"?>'."\n";
echo '<XmlResponse>'. "\n";
while(odbc_fetch_row($res1))
{
$inv_id= odbc_result($res1, "invoice_id");
echo '<inv_id>'.$inv_id.'</inv_id>'. "\n";
$inv_amt = odbc_result($res1,"invoice_amount");
echo '<inv_amt>'.$inv_amt.'</inv_amt>'. "\n";
$i++;
}
echo '<count>'.$i.'</count>'."\n";
echo '</XmlResponse>'. "\n";
前の質問に戻って助けてください。あなたが以前の質問に助けを必要としていて、十分な牽引力が得られない場合は、chat.stackoverflow.com/rooms/5/the-so-tavern-generalにアクセスして質問にお答えください。ここのコミュニティは、質問を解決して受け入れていることを示しているので、将来の質問者はあなたのために働いたものを見て、自分の質問をする必要はありません。私は助けてうれしいです。 – jcolebrand
@Drachensternリンク – jony