自動完成輸入使生活更輕鬆。但是,我正在開發一個項目,客戶堅持要有普通輸入(單選按鈕,複選框組和下拉選擇)。我不想更改服務器端代碼,並打算編寫一個JavaScript函數來在客戶端創建這些表單元素。我認爲最好的方法是給一個普通的文本框輸入一個類,並將其轉換爲最終的輸入類型。但我不想重新發明輪子,所以我想我會檢查一下是否已經完成。谷歌沒有帶來預期的結果,所以我轉向SO,你見過這樣的功能/插件嗎?有沒有ajax`select`?
0
A
回答
0
現在有一個;)這裏是slightly modified jsfidle(因爲我們不想從真實服務器拉數據)。在實際應用中的代碼會是這樣的:
標記
Please choose the product:<br/>
<!-- not all products; only what we have on stock -->
<input type="text" id="product">
JS
$(document).ready(function() {
$.getScript('available_products.php', function() {
// we assume the server would return an array like this:
// var products = ['33712:Product A', '12501:Product B', '14619:Product C'];
var myoptions = '';
$.each(
products, function(n, p) {
var pp = p.split(':');
var i = pp[0];
var v = pp[1];
myoptions += '<option value="' + i + '">' + v + '</option>';
});
$('#product').replaceWith('<select id="product">' + myoptions + '</select>');
});
});
0
如果我正確理解你的問題,你想爲一個表格輸入大量的文本,然後在客戶端將其轉換爲其他形式的輸入(複選框等)?不知道我是否真的理解這種動機(我認爲只需提供符合客戶需求的表單會更容易),但您應該可以使用replaceWith或相關功能來完成此操作。
雖然您的描述看起來好像有些東西缺失 - 您需要編輯服務器端以便在每個輸入上放置一個類,爲什麼不直接改變類型呢?
+0
我想我最終會寫這個函數。你的理解是正確的,動機是保持簡單。假設你有一些需要獲取用戶標識的表單,使用'user-id'類更容易獲得一個文本框,並且有一個腳本查詢users表並返回user-id和將名稱顯示爲json數據。沒有這個,你將不得不爲每個表單解析一個選擇。 – 2010-10-22 17:01:02
相關問題
- 1. SQL有上列沒有SELECT
- 2. 沒有Ajax沒有加載
- 3. 沒有與AJAX
- 4. 如何ORDER BY沒有SELECT
- 5. JQuery沒有選擇SELECT
- 6. MySQL select沒有選擇
- 7. 填充ajax,json和沒有jQuery的<select>菜單
- 8. select ng-options沒有更新AngularJS中的ng-model與ajax
- 9. Ajax沒有功能
- 10. AJAX沒有響應
- 11. 的Grails沒有Ajax
- 12. 背景沒有AJAX
- 13. 沒有UpdatePanel的AJAX?
- 14. AJAX沒有反應
- 15. 沒有Ajax的Handlebar.js?
- 16. HTML數據更新時沒有ajax,但沒有ajax成功jQuery
- 17. SQL SELECT查詢沒有結果,也沒有錯誤
- 18. 有沒有Ajax分頁的好例子?
- 19. 有沒有這樣的AJAX框架?
- 20. Ajax沒有加載所有javascripts
- 21. 有沒有Ajax窗口框架?
- 22. AJAX請求沒有停止
- 23. Ajax請求沒有更新
- 24. 虛擬滾動 - 沒有Ajax
- 25. Ajax響應沒有成功
- 26. Ajax到PHP,沒有更新?
- 27. 沒有AJAX的彗星
- 28. 跨域$ .ajax()沒有「?callback =?」
- 29. ajax呼叫沒有迴應
- 30. Jquery ajax SOAP沒有迴應
如何你的問題的標題和正文相關? – 2010-10-22 16:34:15
@ŠimeVidas - 如果有這樣的事情,它會用ajax供電,很可能被稱爲'ajax select' – 2010-10-22 16:38:52
@Majid在SELECT元素(下拉列表)中選擇?據我所知,你想要提供一個包含INPUT文本框的HTML頁面,然後你想用JavaScript來替換那些帶有其他類型表單元素的文本框,對嗎? Ajax在哪裏發揮作用? – 2010-10-22 16:44:35