1

DHL 让您可以在他们的网站上跟踪您的包裹,例如:http ://www.dhl.com/en/express/tracking.html 。现在,当您输入跟踪号时,它会打开一个新窗口,如下所示:http: //www.dhl.com/content/g0/en/express/tracking.shtml?brand=DHL&AWB= SOMENUMBER1234

现在我想在我的网站上模仿这种行为。我有一个表格,您可以在其中输入跟踪号,它会打开 DHL 网址。这可能吗?

4

2 回答 2

2

是的,只需使用隐藏值和文本框创建一个:

<form method="GET" action="http://www.dhl.com/content/g0/en/express/tracking.shtml">
    <input type="hidden" name="brand" value="DHL" />
    <input type="text" name="AWB" size="{LengthOfTrackingNumber" />
</form>
于 2012-06-06T14:57:35.060 回答
2

使用您在评论中提到的新 URL(请同时更新您的帖子),您可以使用 JavaScript 并通过您自己的服务器进行重定向。

根据您的服务器端脚本语言,您可能必须以不同方式处理服务器部分。以下示例适用于 PHP:

客户端 HTML:

<form method="GET" action="dhl_redirect.php" id="myForm">
    <input type="hidden" name="id" value="" id='myId' placeholder="Enter tracking number" />
</form>

客户端 JavaScript:

(function(){
 var form=myForm;
 form.addEventListener('submit',function(evt){
   var dhlUrl="https://dhlforyou.nl/login/track/";

   var id=document.getElementById('myId');
   if(/^\d+$/.test(id.value)){
    if(myForm.target==='_blank'){
     window.open(dhlUrl+id.value);
    }else{
     location.href=dhlUrl+id.value;
    };

   evt.preventDefault();


 },false);
})();

服务器:

<?php
 if(isset($_GET['id'])&&!is_nan(intval($_GET['id']))){
  $dhlId=$_GET['id'];

  header('Location: https://dhlforyou.nl/login/track/'.dhlId);//Redirect to DHL
  exit;//Skip the rest of the script

 }else{//ID not set or not a number

    header('Location: myHTMLform.htm');
 }
?>

如果您想在新选项卡中打开此表单,只需将属性设置target_blank.

于 2012-06-06T16:15:56.717 回答