2017-01-14 24 views
0

該腳本讀取QR碼並將結果字符串存儲在txtcodigo中。 單擊文本框(或按回車鍵),調用msgSalida。 但是這需要是自動的 - 它不應該要求標籤點擊,而是在JavaScript函數獲取QR碼時立即調用服務器端方法。如何從前端腳本調用後端代碼

我想知道是否有某種方式發送一個事件,以編程方式按下標籤或其他東西。我希望onTextchanged可以工作,但事實並非如此。

ASP標記:

<asp:TextBox ID="txtCodigo" AutoPostBack="True" ReadOnly="false"  runat="server" Width="371px" OnTextChanged="msgSalida" ></asp:TextBox> 

前端的JavaScript:

<script> 
    $(document).ready(function() { 
     $('#reader').html5_qrcode(function (data) { 
      $('#<%=txtCodigo.ClientID%>').val(data);     
     }, 
    . 
    . 
    . 
    </script> 

後端代碼:

protected void msgSalida(object sender, EventArgs e) 
{   
    if (txtCodigo.Text!=null || txtCodigo.Text!="") 
    {  
    . 
    . 
    . 
+0

您在OnTextChanged事件處理函數中引用msgSalida,這是需要調用的正確函數嗎? –

+0

如何調用msgentrada?它是後端代碼,上面是前端代碼。我想這是通過郵寄到一些URL或API?這部分是失蹤,能夠幫助你 –

+0

@MirkoVukušić嗨!,以及是啊當你在文本框中按住並按下輸入,就像一個簡單的按鈕在aspn用c# –

回答

0

您可以在沒有文字的頁面上放置一個LinkBut​​ton,並向其添加一個OnClick事件。現在,您可以在您的代碼使用QR代碼填充文本框後,通過調用JavaScript的__doPostBack事件來僞造LinkBut​​ton的點擊。

<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click"></asp:LinkButton> 

<script type="text/javascript"> 
    function dummyPostBack() { 
     __doPostBack('<%= LinkButton1.UniqueID %>', ''); 
    } 
</script> 
相關問題