gpt4 book ai didi

javascript - 显示复选框选定项目的结果

转载 作者:行者123 更新时间:2023-11-29 23:26:39 26 4
gpt4 key购买 nike

我正在调用 Api :$url = 'https://plapi.ecomexpress.in/track_me/api/mawbd/?awb=awbnumber&order=' 。 $orderrecords[$k]["order_id"] 。 '&username=admin&password=admin123'; 并在我们刷新 php 页面时获取所有 Order IDSStatus 结果并显示在 php 页面中。

但我不想每次刷新页面时调用API。但是,当我通过复选框选择订单 ID 时,当我点击“显示状态”按钮时,我想调用 Api 并更新网页中的选定订单 ID 状态

URL 输出

enter image description here

enter image description here

PHP

<?php

$tabindex=1;
function checkecomstatus($orderid)
{
$data['username']='admin';
$data['password']='ouhk78epe34csmed46d';
$data['awb']=$orderid;

$url = 'https://plapi.ecomexpress.in/track_me/api/mawbd/?awb=awbnumber&order='.$orderid.'&username=admin&password=ouhk78epe34csmed46d';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$output = curl_exec ($ch);
curl_close($ch);
$res = explode("\n",$output);

if ( ! isset($res[13]))
{
$res[13] = null;
}
$status = str_replace('</field>.','',$res[13]);
$statusfinal = str_replace('<field type="CharField" name="status">','',$status);
if($statusfinal!='')
{
$sqlecom = "UPDATE do_order set in_transit='".$statusfinal.".',tconformed_by='Ecom' where order_id=".$orderid;
$db_handleecom = new DBController();
$resultecom = $db_handleecom->executeUpdate($sqlecom);
}

return $statusfinal;
}

?>
<p><button type= "button" >Show Status</button></p>
<table class="tbl-qa" border="1">
<thead>
<tr>
<th class="table-header">ID</th>
<th class="table-header">ORDERID</th>
<th class="table-header">Status</th>
</tr>
</thead>
<tbody id="table-body">
<?php

if(!empty($orderrecords))
{
foreach($orderrecords as $k=>$v)
{?>
<tr class="table-row" id="table-row-<?php echo $orderrecords[$k]["id"]; ?>" tabindex="<?php echo $tabindex;?>">
<td><input type="checkbox" onclick="assignorderids('<?php echo $orderrecords[$k]["order_id"]; ?>')" name="assigneeid" id="assigneeid-<?php echo $orderrecords[$k]["order_id"]; ?>" value="<?php echo $orderrecords[$k]["order_id"]; ?>"></td>

<td><?php echo $orderrecords[$k]["order_id"]; ?></td>

<td><?php echo checkecomstatus($orderrecords[$k]["order_id"]);?></td>

</tr>
<?php
$tabindex++;
}
}?>
</tbody>
</table>
<input type="hidden" name="ordercheckallIDs" id="ordercheckallIDs" value="<?php echo $ordercheckall;?>"/>

Javascript

function assignallorderids()
{
var checkstatus=$("#checkall").is(":checked");

if(checkstatus==true)
{
var id=document.getElementById("ordercheckallIDs").value;
document.getElementById("orderids").value=id;
$("input:checkbox[name='checkassigneeid']").prop('checked',true);
}
else
{
$("input:checkbox[name='checkassigneeid']").prop('checked',false);
document.getElementById("orderids").value='';
}
}

function assignorderids(oid)
{
var checkstatus=$("#assigneeid-"+oid).is(":checked");
var morderId =document.getElementById("orderids").value;
if(checkstatus==false)
{
var arrayorder = JSON.parse("[" + morderId + "]");
document.getElementById("orderids").value='';
for (var i = 0; i < arrayorder.length; i++) {
var orderstatusValue=arrayorder[i];
if(orderstatusValue!=oid){
if (document.getElementById("orderids").value=='')
{
document.getElementById("orderids").value=orderstatusValue;
}
else
{
var newvalue=document.getElementById("orderids").value;
document.getElementById("orderids").value=newvalue+","+orderstatusValue;
}
}
}
}
else
{
if(morderId=='')
{
document.getElementById("orderids").value=oid;
}
else
{
document.getElementById("orderids").value=morderId+","+oid;
}
}
}

最佳答案

看来您不了解 jQuery 基础知识。如果您可以从 API 获取数据但在刷新时触发,则将其置于触发触发方法中。如果你有 fetchData() 函数,它根据复选框从 API 中获取数据,那么不要直接触发它,而是做类似的事情$('#fetch-button-id').click(function() { fetchData(); });

如果您只是将 API 代码中的获取数据直接放入文档中,然后将这些代码添加到函数中,然后调用它。

关于javascript - 显示复选框选定项目的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48941833/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com