就像这样,当下拉框为发放 文本框就显示发放|,选择公司新闻,后面就显示公司新闻,以|拼接! 这个应该怎么实现呢,求博客各位前辈讲解
change事件可以搞定,监听下拉框的每一次操作,每次操作完成后在js里面处理选择的值,然后按照你想要的方式拼接字符,然后写入到指定的input框或者其他可编辑不可编辑的元素里。不知道能不能帮到你
嗯!意思是明白了。可是不知道怎么做。我是实习生。目前工作了一个月。今天领导提的问题。我不知道该怎么实现。没了解过,完全没思路
对了,前辈怎么监听呢??
@Denver1: 我用jq来写写吧,我写好测试下。一会给你……我不是啥前辈啊啊,我也实习……
@进击的小矮人: 大哥。你实习半年多了把。感觉你会好多。至少有逻辑性。
@Denver1: 代码如下,谷歌浏览器40测试通过,原生js。。。
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 </head> 7 <body> 8 <select id="select"> 9 <option>发放</option> 10 <option>回收</option> 11 <option>撤销</option> 12 </select> 13 <input id="barn" type="text"/> 14 15 </body> 16 <script type="text/javascript"> 17 var select = document.getElementById('select'), 18 input = document.getElementById('barn'); 19 select.addEventListener('change', function () { 20 console.log(this.value); // 选中的值,如果option的value属性不存在,就取option元素的文本内容 21 input.value = this.value + '|'; 22 }, false); 23 </script> 24 </html>
这是一个简单的例子,慢慢来。。建议你先接触下jquery,多看看w3shool上面的教程,先上手。
@Denver1: 哈哈,我都快毕业啦~~共同学习~~
@进击的小矮人: 本地测试可行。可是跟我后台绑定数据一起就不可以。嗯。我才刚实习。锻炼逻辑能力啊!! 嗯嗯。
var str=''; var sel= $("#select_id").val(); //获取Select选择的Value str+=sel+'|'; $("#textbox1").val(str); 纯手工代码, 使用的是jquery.js
谢谢。前辈讲解。 可是没有成功。。没学过jquery 也不知道怎么改,只好来问问你啦
这样只是初始化时有显示,用户再次选择的时候,代码就不会执行了。必须监听一个事件
@进击的小矮人: 嗯!初始化也没反应,他的代码大概的意思是获取下拉框的value。然后给下拉框value加上|给空,然后文本框显示这个下拉框的值。不知道是不是因为我的vs是2005的原因。没起作用。
@Denver1: 嗯,是的哈,我是假设他的select框有一个默认值,有默认值就是ok的了
@进击的小矮人: 嗯 我要做大哥这样的实习生
你们的做法有缺陷,如果我在两个数据之间来回的多次切换,你的结果会是怎么样的呢?是不是变成了“发放|公司新闻|发放|公司新闻|发放|公司新闻|发放|公司新闻”....还有考虑数据重复问题,或者怎么保证已选的数据不能再选。
是啊!还有判断是否已经选择。这个还好。到时候显示还能再选,那时还要在数据库里面判断数据重复问题。
听大神这么一说,我感觉我这个就算前期弄好了,后期还有很多问题!!
去百度一下二级联动就好了