jquery通过class获取a标签里面的值,附给button,并且关闭弹出框,怎么写呀

<html><head><title>省市公司页面</title><script type="text/javascript"> function proListJSON(divid) { //省动态刷新 $.ajax({ type : 'POST', url : '${pageContext.request.contextPath}/proController/proListJSON', dataType : 'json', success : function(result) { $.each(result, function() { $("#proList").append("<li>" + "<a class='aclick' href='javascript:;' >" + this.proName + "</a>" + "</li>"); }); }, error : function() { } }); } function orgListJSON(proName) { //省市公司动态刷新 $.ajax({ type : 'POST', url : '${pageContext.request.contextPath}/orgController/orgJSON?proName='+proName, dataType : 'json', success : function(result) { return result.orgName; }, error : function() { } }); } //弹出框加载触发器 $(document).ready(function() { new PopupLayer({trigger:"#ele8",popupBlk:"#blk8", onBeforeStart:function(){ proListJSON(proList); } }); }); //给botton赋值 $(document).ready(function() { $(".aclick").click(function(){ var proName = $(this).html(); var orgName = orgListJSON(proName); $("#ele8").val(orgName); $("#emample8").hide(); }); });</script></head>
<body>

这样写获取不到点击事件,赋值也不成功,另外问下点击完要隐藏弹出框,怎么弄?

// 你好
// 由于你的 <li> 是动态生成的,你在使用 $.ajax 的时候也没有指定 同步加载
// 所以可能是先执行了下面的 $(".aclick") 绑定事件了
// 在 <a> 还没有生成的时候,就对齐进行绑定,因此是无效的
// 而且你的 <li> 是根据选择结果动态生成的,建议把你的绑定事件写到
// $("#proList").append("<li>"); 之后
// 去掉最后一个 $(document).ready 给 button 赋值的代码
// 改动你的 success:function(){} 如下

$.each(result, function() {
var proName = this.proName;
// 这里循环定义 li 标签
var li = $("<li><a class='aclick' href='javascript:void(0);'>"+proName +"<a></li>");
// 然后再对该标签进行 click 绑定
li.click(function(){
$("#ele8").val(proName);
$("#emample8").hide();
})
// 这里 append 一个已经带有 click 事件的 li 就OK了
$("#proList").append(li);
});追问

刚试了下,还是监听不到点击呀

追答

你的HTML页面引用了Jquery.js了吗?如果有的话,要看看是否有监听事件的触发,你可以修改
li.click(function(){
alert("我被触发了");

})
如果可以alert出来,则是赋值语句的问题

追问

这段代码明显有问题呀,只加载了一个数据,就hide了。

追答

你估计没理解好li.click(function(){})这个方法
li.click(function(){}) 这一句的意思是,这个 li 控件点击的时候,执行 function(){} 里面的方法体,加载数据和点击,是没有必然联系的

追问

可以加下我Q吗?9。2。4。5。1。9。7 我弄了好久没弄出来。。。

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-11-06
你ready时json获取到了A标签,然后再写到页面中时,再用ready绑定click操作,这样js是获取不到你append进去的A标签的,因为,ready就表示是你加载页面的时候获取到页面元素,而你又动态写入了A元素,那么你写之前,已经加载完成,所以找不到A标签。
所以你的$(".aclick").click事件不能用ready,我觉得你写到button上,或者将js写到页面的最后(不能用ready)追问

可以给个具体的代码吗?不写ready的话 ,用什么?我是小白,急用,拜托了

追答

你这代码我这里不好运行啊。。你自己试试,就是写到: $("#proList").append("" + "" + this.proName + "",这个里边写个click事件,然后你把你的click处理放到这个函数里边

第2个回答  2013-11-06
//动态追加的元素,事件绑定用bind或者live
$(".aclick").live('click',function(e){
    .....
})

追问

可以把我需要改动的地方,具体写下代码吗?我是小白。
我的需求是点击“省份”,进数据库查询出来,对应的公司。然后赋值在输入框(我这里用的是button),然后隐藏弹出框。

追答

代码你不是都写好了么?直接把你的$(".aclick").click() 换成
$(".aclick").live('click',function(e){
.....
})
不就行了吗?

jquery通过class获取a标签里面的值,附给button,并且关闭弹出框,怎么写...
\/\/ $("#proList").append("<li>"); 之后 \/\/ 去掉最后一个 $(document).ready 给 button 赋值的代码 \/\/ 改动你的 success:function(){} 如下 .each(result, function() { var proName = this.proName;\/\/ 这里循环定义 li 标签 var li = $("<li><a class='aclick' href='javascr...

jquery怎么获取a里面某个标签的值
1、首先,打开html编辑器,新建html文件,例如:index.html,并引入jquery。2、在index.html中的<script>标签,输入jquery代码:$('body').append($('a').attr('id'));。3、浏览器运行index.html页面,此时成功获取到了a标签的id值。

JQ弹出层点击空白关闭怎么写?
<body> <div class="btn">弹出按钮<\/div> <div class="boaguo"><\/div> <div class="box">弹出层<\/div> <\/body> <\/html>

jquery获取button的值(jQuery获取输入框的值)
("input:button").attr("name");\/\/jQueryattr()方法用于获取属性值 ("input:button").prop("name");\/\/prop()方法也可以用于获取属性值,绝大多数情况下二者通用 示例如下:创建Html元素:多个不同name属性的button inputtype="button"name="button1"class="button"value="提交"inputtype="button"...

怎么使用jquery获得标签的值或元素的内容
("label#userid").html(); \/\/ 也可以实现,获取label标签内的所有html标记,一般情况改下label标签内就是文本,所以等效上面的方法 下面给出实例演示:分别使用以上两种方法获取label标签的内容,注意最终结果的区别 创建Html元素 <div class="box"> <span>点击按钮获取label中内容:<\/span><br> ...

怎么使用jquery获得标签的值或元素的内容?
} 3编写jquery代码$(function(){$("input:button.btn1").click(function() {alert($("label#userid").text());});$("input:button.btn2").click(function() {alert($("label#userid").html());});})化学元素(Chemical element)就是具有相同的核电荷数(即核内质子数)的一类原子的总称...

JQuery中获取取a标签元素的问题
(this).get(0)与$(this)[0]等价,$('a').get(0)获取的就是a标签元素。

a标签按钮(多个),点击A按钮 下面显示内容,点击B按钮 下方关闭A内容 显示...
用了jquery,代码如下:<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Test<\/title><style type="text\/css">.button {background-color: #5bc0de;border-radius: 5px;color: white;padding: .5em;text-decoration: none;}.button:focus,.button:hover {background-color: #46b...

jquery怎么获取多个a标签里面的href值
type="button" id="test" value="Click Me"\/><Script>$(function(){ $("#test").on("click",function(){ var ahref=$("a").map(function(){ return $(this).attr("href"); }).get().join(","); alert(ahref); })...

jquery获取按钮的id的值
1、获取button对象,可根据button的id或者class属性或者name属性等来获取想要的button对象;2、根据对象获取值;例:现有button,id = bt <button id='bt' value='123' \/> 获取对象的方法:$("#bt");获取值的方法用.val()方法获取值,完整写法:$("#bt").val();

相似回答