hookee高人 在吗? 能不能给给例子啊? 最后31分..

dusttosky 2011-11-01 02:17:52
A页面一个文本域(nm), 通过A页面打开一个子窗口, 子窗口全部是select 姓名 from tb的结果.比如:
李某
张某
王某
.
.
.

如何才能实现用户点击李某或其他姓名时,A页面的文本域(nm)的值实时得到这个姓名.并且子窗口可以多选...... 另外,不知道能否实现点击子窗口姓名的时候,判断A页面文本域(nm)的值中是否存在,就是点一下姓名增加,再点一下就删除.

我这个想法能不能现实呀? 是不是太复杂了, 远远超出我的能力...........
...全文
72 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dusttosky 2011-11-02
  • 打赏
  • 举报
回复
非常感谢楼上几位热心的回答, 我先试试
scscms太阳光 2011-11-01
  • 打赏
  • 举报
回复
在这我强调一下:<input type="text" size="30" name="user" id="user" readonly value="," />
必须设置为只读,甚至设置为隐藏,以防别人手动修改!
if(v.indexOf(","+str+",")==-1) 判断时必须在人名前后添加标识符,楼上的例子我没测试,但其判断过程不严格!因为假如我添加了一个“小李子”,当我添加“小李”时就有可能把“小李子”误删除了。
请注意:"aa,b,c".indexOf("a")!=-1
scscms太阳光 2011-11-01
  • 打赏
  • 举报
回复
其实这种功能是很简单的,我们已经做了几次了。
父窗口:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>弹窗选用户</title>
<meta name="keywords" content="弹窗选用户" />
<meta name="description" content="弹窗选用户" />
</head>
<script type="text/javascript">
function adduser(str){
var v=document.getElementById("user").value;
if(v.indexOf(","+str+",")==-1){
v+=str+",";
}else{
v=v.replace(","+str+",",",");
}
document.getElementById("user").value=v;
}
function add(){
window.open ('add.html', 'newwindow', 'height=200, width=200, top=30, left=30, toolbar=no, menubar=no, scrollbars=no,resizable=no,location=no, status=no');
}
</script>
<body>
<input type="text" size="30" name="user" id="user" readonly value="," />
<button type="button" onclick="add()">选择</button>
</body>
</html>

子窗口add.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>选择用户</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<script type="text/javascript">
function scs(str){
opener.adduser(str);
}
</script>
<body>
<ul>
<li onclick="scs('张三')">张三</li>
<li onclick="scs('李四')">李四</li>
<li onclick="scs('王麻子')">王麻子</li>
</ul>
<select onchange="scs(this.value)" name="user">
<option value="小强">小强</option>
<option value="小李">小李</option>
<option value="小謝">小謝</option>
</select>
</body>
</html>
挨踢直男 2011-11-01
  • 打赏
  • 举报
回复
如果你看到过这种做法,你把地址发来,看看这里的人可不可以帮你提供示例代码
你光这样说说,很难看明白
EdwardLong 2011-11-01
  • 打赏
  • 举报
回复
A页面
<input id="list" value="" type="text" />
<input type="button" value="open" onclick ="window.open('pageB.htm','newWindow')"/>
B页面
<script>
function setName(username){
var list = window.opener.document.getElementById('list');
var listval = list.value();
if(listval .length == 0 )
{
list.value = listval;
}
else
{
var nameIndex = listval.indexOf(username);
if(nameIndex == -1)
{
//如果该名字尚未添加到文本框
listval += username+","
list.value = listval ;
}
else
{
var strval = "";
//如果该名字已经存在
//方案1.直接用空字符替换
// strval = listval.replace(username,"");
// list.value = strval ;
//方案2. 数组应用
var userarr = listval.split(",");

for(var i=0; i< userarr.length; i++)
{
if(userarr[i] != username) strval += userarr[i]+","
}
strval = strval .slice(0,-1);//去除最后一个逗号
list.value = strval ;
}
}
}
</script>
<select id="userlist" onchange="setName(this.value)">
<option value='john'> john</option>
<option value='sam'> sam</option>
<option value='leo'> leo</option>
</select>

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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