2012-11-19 34 views
0

如果我的下拉列表中選擇了一個值,我想在我的文本框中顯示選定的項目文本。如果不是,我想清空它。將dropdownlist值設置爲jQuery中的文本框

<asp:DropDownList ID="ddl" runat="server" AutoPostBack="true" onselectedindexchanged="ddlSelectedIndexChanged" Width="200px" onchange="ddlChange()"> 
</asp:DropDownList> 
<asp:TextBox ID="hdntxtbxTaksit" runat="server" Visible="false"></asp:TextBox> 

我該怎麼做?

回答

1

使用jQuery;

$().ready(function(){   
    $('#<%=ddl.ClientID %>').change(function() {    
    $('#<%=hdntxtbxTaksit.ClientID %>').val($(this).val() == "0" ? "" : $(this).val());    
    }); 
}); 

編輯:採用上面的方法,你並不需要調用onchange事件下拉列表中。所以,您的標記可以

<asp:DropDownList ID="ddl" runat="server" AutoPostBack="true" 
     onselectedindexchanged="ddlSelectedIndexChanged" Width="200px"> 
</asp:DropDownList> 
<asp:TextBox ID="hdntxtbxTaksit" runat="server" Visible="false"></asp:TextBox> 
1

如果你想分配下拉列表中選擇值的文本框,你可以在更改事件不分配和狀況爲change event means dropdown have been selected

使用JavaScript

變化

onchange="ddlChange()" 

onchange="ddlChange(this)" 

你javascrpt方法是

function ddlChange(ddl) 
{  
     document.getElementById('<%= hdntxtbxTaksit.ClientId %>').value = this.value; 
} 

使用jQuery

刪除onchange =「ddlChange()」,因爲我們將事件綁定到jquery。

$('<%= ddl.ClientId %>').change(function(){   
      $('<%= hdntxtbxTaksit.ClientId %>').val($(this).val());  
}); 
0

,你可以做這樣的

function ddlChange() 
{ 
    if(document.getElementById('<%= ddl.ClientId %>').value=='0') 
    { 
     document.getElementById('<%= hdntxtbxTaksit.ClientId %>').value = ""; 
    } 
    else 
    { 
     document.getElementById('<%= hdntxtbxTaksit.ClientId %>').value = document.getElementById('<%= ddl.ClientId %>').value;  
    } 
} 
0

試試這個代碼,並刪除你的ASP添加onchange事件:下拉列表

注: AutoPostBack屬性將永遠做一個頁面提交,如果您在下拉菜單中的onchange方法返回false,它不會停止,甚至

 $(document).ready(function() { 
      $('#<%=ddl.ClientID %>').change(function() { 

       if ($(this).val() != "0") { 
        $('#<%= hdntxtbxTaksit.ClientID %>').val($(this).val()); 
       } 
       else { 
        $('#<%= hdntxtbxTaksit.ClientID %>').val(""); 
       } 
      }); 

     }); 
相關問題