2016-11-24 109 views
0

我已经看到一些关于这个问题的帖子,但我找不到解决我的问题。我有一个文本框,并通过autocomplextxtender我从数据库中搜索记录。这工作正常。从asp文本框调用javascript函数

<ajaxToolkit:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server" CombineScripts="false"> 
      </ajaxToolkit:ToolkitScriptManager> 
      <asp:TextBox ID="txtAccNo" runat="server" Width="125px" ToolTip="Account Number"> 
      </asp:TextBox> 
      <asp:AutoCompleteExtender ID="AutoCompleteExtender2" runat="server" 
       TargetControlID="txtAccNo" MinimumPrefixLength="2" EnableCaching="true" CompletionSetCount="10" 
       CompletionInterval="1000" CompletionListCssClass="autoExtender" CompletionListItemCssClass="autoExtenderList" 
       ServiceMethod="getAccountNumbers" ServicePath="WebServiceGetAccounts.asmx"> 
      </asp:AutoCompleteExtender> 

现在我想在文本框中显示一些加载GIF(http://loadinggif.com/images/image-selection/3.gif)当数据web服务搜索。为此,我想要JavaScript函数来加载这个gif文本框中。当webservice显示一些数据时,我想删除这个gif。另外我想加载这个gif,如果用户在文本框中放置至少2个数字。因为autocompleteextender的MinimumPrefixLength属性设置为2.如果任何人都可以提供帮助,我会非常感激。

+0

可以使用[BlockUI](http://malsup.com/jquery/block/)为元件也 – Webruster

+0

我喜欢你的建议......但你可以在BloackUI中建议一个方法,当webservice返回搜索数据时它会被触发。所以我可以取消阻止加载屏幕 –

+0

我不能那么具体,但可以给你一个场景如何在asp.net控件中使用 – Webruster

回答

0

有AutoCompleteExtender像OnClientPopulating和OnClientCompleted的一些属性...使用这些属性来执行任何任务。在我的情况下,我想加载一个gif。我创建了一个css类和一个javascript函数来加载gif,同时使用AutoCompleteExtender的属性。

onclienthiding="OnClientCompleted" onclientpopulated="OnClientCompleted" 

Javascript函数:

function OnClientPopulating(sender, e) { 
sender._element.className = "loading"; 
} 
function OnClientCompleted(sender, e) { 
sender._element.className = ""; 
} 

CSS类别:

.loading 
{ 
background-image: url(img/loading.gif); 
background-position: right; 
background-repeat: no-repeat; 
} 
0

希望低于解决方案/逻辑帮助你。

<asp:TextBox ID="txtAccNo" runat="server" Width="125px" onchange="return inputText_Changed();" ToolTip="Account Number"> </asp:TextBox> 

    <script type="text/javascript"> 
     function inputText_Changed() { 
      var accountNo = document.getElementById('<%= txtAccNo.ClientID %>').value.trim(); 
      //check minimum input characters MinimumPrefixLength 
      if (accountNo.length >= 2) { 
       // remove/hide your gif image 
       return true; 
      } 
      else { 
       // Add/show your gif image 
       return false; 
      } 
     } 
    </script> ` 

让我知道,如果有任何疑问,你有

感谢

编码快乐