标签问题

「已注销」 2014-06-15 09:57:43
如题,我想用<ul><li></ul></li>标签实现select那种效果,请问要怎么实现?

就是比如这样

<ul>
<li>张三</li>
<li>李四</li>
<li>王五</li>
</ul>

当我选中的是张三时后台获取的是001这个值,选中李四时获取的是002这个值,选中王五时获取的是003这个值,
请问要怎么实现


用select写的话我知道,就是

<select>
<option value="001">张三</option>
<option value="002">李四</option>
<option value="003">王五</option>
</select>

但是用<ul><li>不知道怎么写
...全文
445 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2014-06-16
  • 打赏
  • 举报
回复
问题已经解决了 ,谢谢各位,解决代码如下:

<div class="ddl collapse driver cover-3">
	<input type="hidden" id="driverId" name="driverId" value="" />
	<input type="text" placeholder="" readonly>
	<ul>
		<li data-value="001">张三</li>
		<li data-value="111111">李四</li>
		<li data-value="12345678910">哈哈</li>
		<li data-value="你好">哇哈哈</li>
	</ul>
</div>

$(document).ready(function() {
	'use strict';
	var $driver = $('.driver'), $list = $driver.children('ul');
        $list.delegate('li', 'click', function() {
		var $this = $(this);
		$driver.value = $this.attr('data-value');
		 //alert($driver.value);
		 //alert($this.attr('data-value'));  
	});
});
「已注销」 2014-06-16
  • 打赏
  • 举报
回复
引用 4 楼 Return_false 的回复:
如果是表单提交的话,你完全可以在表单中设置一个隐藏域,点击li时,改变隐藏域的值即可,最终提交表单即可
恩,我现在是这样写的,但是还有一个获取到的值得问题,比如说: 点张三我应该获取的是001,但实际获取的是1,自动去掉了00 点李四我获取的是222,正常 点王五我获取的是0 点赵六获取的也是0 这个有什么办法解决吗?

function getDriverId(obj) {
	document.getElementById("driverId").value = obj.value;
	alert(document.getElementById("driverId").value);
}

<input type="hidden" id="driverId" name="driverId" value="" />
<ul>
	<li value="001" onclick='getDriverId(this)'>张三</li>
	<li value="222" onclick='getDriverId(this)'>李四</li>
	<li value="12345678910" onclick='getDriverId(this)'>王五</li>
	<li value="测试" onclick='getDriverId(this)'>赵六</li>
 </ul>
「已注销」 2014-06-16
  • 打赏
  • 举报
回复
恩 好的 谢谢您
KK3K2005 2014-06-16
  • 打赏
  • 举报
回复
你点击ul的时候 改变 select 的 value
  • 打赏
  • 举报
回复
如果是表单提交的话,你完全可以在表单中设置一个隐藏域,点击li时,改变隐藏域的值即可,最终提交表单即可
皓月长空 2014-06-15
  • 打赏
  • 举报
回复
纯手打,有点错误,下面没打</jquery>,你可以测试一下
皓月长空 2014-06-15
  • 打赏
  • 举报
回复
<ul>
    <li name="001">张三</li>
    <li name="002">李四</li>
    <li name="003">王五</li>
</ul>
<jquery> $(function(){ $("ul li").click(function(){ var ar = $(this).attr("name"); alert(ar); }) }) <jquery> 你自己包含一个jquery就可以了
「已注销」 2014-06-15
  • 打赏
  • 举报
回复

61,128

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧