2016-05-29 35 views
0

私はバーコードリーダーの文字を取得し、ユーザーのUIにそのデータを表示するために必要なWCFサービスアプリケーションを開発中です。私の問題は、キーボードでテキストボックスにデータを書き込むとOKだが、バーコードリーダーから読み取ってそのデータを上書きし、UIで3回のデータを表示すると問題になる。このラインコード上ASP.Netバーコードリーダーの表示データ

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head id="Head1" runat="server"> 
    <title>سرویس و بارکد خوان</title> 


    <script src="Scripts/jquery-1.11.0.min.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
     function setFocusToTextBox() { 
      $(document).ready(function() { 
       document.getElementById('txtFirst').focus(); 

      }); 
      } 
</script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#txtFirst").keydown(function (e) { 
      if (e.which == 17 || e.which == 74) { 
       e.preventDefault(); 
      } else { 
       console.log(e.which); 
      } 
     }) 
    }); 
</script> 
    <script type="text/javascript" language="javascript"> 
     function JqueryAjaxCall(val) { 
      $("#contentHolder").empty(); 
      $(".form-errors").empty(); 
       if (val != null && val.length === 20) { 
        document.getElementById("txtFirst").select(); 
       var pageUrl = '<%= ResolveUrl("~/Default.aspx/jqueryAjaxCall") %>'; 
       var parameter = { "myVal": val} 

       $.ajax({ 
        type: 'POST', 
        url: pageUrl, 
        data: JSON.stringify(parameter), 
        dataType: 'json', 
        contentType: 'application/json; charset=utf-8', 
        dateFormat: 'dd/mm/yy', 
        success: function (data) { 
         onSuccess(data); 
        }, 
        error: function (data, success, error) { 
         var myitems = jQuery.parseJSON(data.responseText); 
         $(".form-errors").text(myitems.Message).show(); 
        } 
       }); 

     return false; 
     } 

    function onSuccess(data) { 

      var items = data.d; 
      var fragment = "<ul>" 
      var BLNumber = items.BLNumber; 
      var ContainerNumber = items.ContainerNumber; 
      var Destination = items.Destination; 
      var SerialNumberVerification = items.SerialNumberVerification; 
      var TempPermission = items.TempPermission; 
      var VehicleNumber = items.VehicleNumber; 
      var VehicleType = items.VehicleType; 
      var VoyageID = items.VoyageID; 
      var value = new Date(parseInt(items.ExitDate.substr(6))); 
      var ExitDate = value.getMonth() + 1 + "/" + value.getDate() + "/" + value.getFullYear(); 
      var ExitPermissionNumber = items.ExitPermissionNumber; 
      var myvalue = new Date(parseInt(items.SpecialZoneOrCustomPermissionDate.substr(6))); 
      var SpecialZoneOrCustomPermissionDate = myvalue.getMonth() + 1 + "/" + myvalue.getDate() + "/" + myvalue.getFullYear(); 
      var SpecialZoneOrCustomPermissionNumber = items.SpecialZoneOrCustomPermissionNumber; 

       fragment += "<li> " + " شماره بارنامه : " + BLNumber + " <br> " 
            + " شماره کانتینر : " + ContainerNumber + " <br> " 
            + " مسافت : " + Destination + " <br/> " 
            + " شماره تائیدیه : " + SerialNumberVerification + " <br/> " 
            + " شماره مجوز موقت : " + TempPermission + " <br/> " 
            + " شماره وسیله نقلیه : " + VehicleNumber + " <br/> " 
            + " نوع وسیله نقلیه : " + VehicleType + " <br/> " 
            + " VoyageID : " + VoyageID + " <br/> " 
            + " تاریخ خروج : " + ExitDate + " <br/> " 
            + " شماره خروج : " + ExitPermissionNumber + " <br/> " 
            + " تاریخ مجوز : " + SpecialZoneOrCustomPermissionDate + " <br/> " 
            + " شماره مجوز : " + SpecialZoneOrCustomPermissionNumber + " <br/> " 
            + "</li>"; 

       $("#contentHolder").append(fragment); 
      } 
     } 


    </script> 

</head> 
<body onload="setFocusToTextBox();" bgcolor="#E6E6FA"> 
    <form id="myForm" runat="server" dir="rtl" > 
    <br /> 
    <br /> 
    <br /> 
    <br /> 
    <br /> 
    <br /> 
    <br /> 
    <hr /> 
    <div> 
     <table cellpadding="1" cellspacing="0" style="width: 80%;"> 
      <tr> 
       <td> 
       </td> 
       <td> 
        <asp:Label ID="lblFirst" runat="server" Text="لطفا شماره سند را وارد نمائید : " Font-Bold="True"></asp:Label> 
        <input type="text" id="txtFirst" onfocus="setFocusToTextBox" onkeyup="return JqueryAjaxCall(this.value);" class="col-xs-4" style="background-color:#ede0dd"/> 
       </td> 

      </tr> 
      <tr> 
       <td> 
       </td> 
       <td> 
       <div id="contentHolder" > 
        <asp:Label ID="lblError" runat="server" Text=""></asp:Label> 
        </div> 
       </td> 
       <td> 
        <div class="form-errors" style="margin-right:-175%;font-style:oblique" dir="rtl" align="right"></div> 
       </td> 
      </tr> 
     </table> 
    </div> 
    </form> 
    <br /> 
    <br /> 
    <br /> 
    <br /> 
    <br /> 
    <hr /> 
</body> 
</html> 
+0

このリンクからそれを見つける私はその問題が原因APPENDのだと思いますが – OBender

+0

を使用したコードのコードスニペットや例を追加してください。おそらく私は正しく使用してくれます。誰か助けてもらえますか? – Masoumeh

答えて

0

あなたは各キーのデータ出力、3回、多分多くを、持っているすべてのキークリックの各クリックで

onkeyup="return JqueryAjaxCall(this.value);" 

ので、あなたのAJAXを呼び出します押す。レンダリングの入力を完了したときにのみコードを再設計します。