尝试创建一个动态列表项.jQuery
Trying to create a dynamic list item. jQuery
我有几个列表项,在左侧垂直对齐。我试图使右侧的容器,这是空的,将填充来自该列表项的特定id的url的信息。我能够使用load()创建一个jQuery函数,它允许我在列表项中单击,并将数据填充到正确的容器中,但这只是最小id的数据。如果单击其他列表项,则正确容器中的数据不会改变。目前,我添加了这行代码
var strReqUrl = $(this).attr('href');
alert(strReqUrl);
查看警报是否会显示它应该使用的链接。当我在列表项中单击时,警告显示"未定义"。(
我试着在列表项中添加一个链接,它工作了。显示了正确的数据,但是,我每次都离开当前页面来查看它,并且它根本没有填充在右边的容器中,现在在上一页上。
是否有办法将正确的id分配给正确的列表项?
这是我的HTML:<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("li").click(function(){
var strReqUrl = $(this).attr('href');
alert(strReqUrl);
//$("#divId").load("pm_message.php?u=<?php echo $log_username; ?>&pmid=<?php echo $pmid; ?> #pm_post");
});
});
<body>
<div class="wrapper"> <!--Left and Right container wrapper-->
<div class="container">
<div class="left">
<!--left container-->
<div class="top">
<input type="text" />
<a href="javascript:;" class="search"></a>
</div>
<ul class="people">
<a href="pm_message.php?u=<?php echo $log_username; ?>&pmid=<?php echo $pmid; ?>"><?php echo $people; ?></a> <!--generates list of people-->
</ul>
</div>
<div class="right" id="right">
<!--Right container-->
<div class="top"><span class="name"></span></div>
<div id="divId"></div>
</div>
</body>
</html>
和脚本:
//DB connection
//Collecting data from db
//Variable $people collects data for the people listed in the left container
$people = '
<li class="person">
<a id="a" href="pm_message.php?u='.$log_username.'&pmid='.$pmid.'"><span class="name">'.$sender.'</span></a>
<!--<span class="name">'.$sender.'</span>-->
<span class="time">'.$time.'</span>
<span class="preview">'.$message.'</span>
</li>';
当您分配事件处理程序时,li尚未在文档中。您需要使用委托处理。并且您正在寻找的href属性不存在。试试这个:
$('ul').on('click', 'li', function() {
var strReqUrl = $(this).find('a').attr('href');
alert(strReqUrl);
});
查看更多- http://api.jquery.com/on/
相关文章:
- 使用javascript将动态表从一个html页面打印到另一个html页
- 使用CSS或js,使用动态选择器选择任意li的下一个元素
- 通过单击动态加载的表中同一行的另一个字段来更新一行的字段
- 使用AngularJS Directive WHITOUT$scope创建一个动态html元素
- 是否可以仅通过jQuery将图像替换为用户动态选择的另一个图像
- 动态构建一个数据表与scriplets
- 动态创建一个javascript/jquery多级数组
- 如何在javascript转换编码中将一个动态值从一个表单添加到另一个页面
- 你能把一个匿名方法(函数)动态地变成一个命名方法吗
- 将动态元素绑定到函数;只剩下一个绑定
- 为json对象创建一个动态表
- 动态修改一个元素,使其与给定的选择器匹配
- 如何查找一个单词在动态创建的html表行中出现的次数
- 从表单中动态生成一个字符串,传递给通过AJAX加载的PHP文件
- 为node.js创建一个动态的restful api
- Javascript动态表,每个单元格都有一个onmouse事件
- 我如何创建一个动态地图来显示我们公司的位置
- 让ASP.NET中继器设置一个动态名称
- 在Javascript中连接一个动态变量名
- 在javascript中动态添加一个选择下拉菜单