自动完成输入使生活更轻松。但是,我正在开发一个项目,客户坚持要有普通输入(单选按钮,复选框组和下拉选择)。我不想更改服务器端代码,并打算编写一个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