2011-03-28 89 views
1

我有一個asp.net dropDownList列出當天的小時和分鐘。我希望選擇的時間在一個texbox中顯示。這可以做到沒有回發?
謝謝
多夫如何使用dropdownlist填充文本框而無需回發?

+0

我加了我自己的答案,它被Robert Harvey刪除了。爲什麼?這對我來說是一個很好的選擇!謝謝Dov。 – 2011-03-30 12:19:11

回答

0

在微軟的Ajax控件工具包中有一個ComboBox,它提供了DropDownList和TextBox函數,可以從ComboBox中選擇或直接寫入TextBox。還可以限制獨立寫入僅限於ComboBox中的項目或輸入不存在的項目。

1

添加一個onchange的下拉和使用Java腳本來檢測下拉選擇並寫入文本。

1

如果你不介意使用JavaScript和更具體jQuery您可以設置時間客戶端如在這個簡單的例子:

HTML:

<head> 
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script> 
    <script> 
     $(document).ready(function() { 

      function setTime(){ 
       var hours = $(".hours").val(); 
       var mins = $(".minutes").val(); 
       $(".time").val(hours + ":" + mins); 

      }; 

      $(".hours").change(setTime); 
      $(".minutes").change(setTime); 

      // call setTime for first view 
      setTime(); 
     }); 
    </script> 
</head> 
<body> 
    <input type="text" class="time" /> 

    <select class="hours"> 
     <option>1</option> 
     <option>2</option>  
     <option>3</option> 
    </select> 

    <select class="minutes"> 
     <option>15</option> 
     <option>30</option>  
     <option>45</option> 
    </select> 
</body> 

有一個working example here

+0

謝謝你,你的建議看起來很有趣,但我不知道java腳本,所以我不知道如何在我的代碼中實現你的想法。我有一個下拉列表,它由c#代碼中的PageLoad事件中的循環填充。如何接收dropDownList的選定值並將其傳輸到文本框,以及代碼中的位置是否放置了JavaScript? – 2011-03-29 15:05:40

+0

我已經添加了一些代碼來顯示在Google內容交付網絡(CDN)上對jQuery v1.5.1的引用,並將代碼snippit放置在頭標記中的腳本標記中。 – Swaff 2011-03-29 15:23:15

+0

謝謝,這非常有幫助。 – 2011-04-07 08:58:20

1

如果可以使用ajax,則可以使用ajax控件工具包中的更新面板。

它實際上創建了一個回傳,但部分是如此最終用戶的觀點,似乎沒有回傳發生;和你的觀點,只有更新面板中的元素受到回發的影響。