jQuery点击类加载链接
jQuery click Class load a link
我在wordpress中安装了一个脚本,可以将选定的视频添加到收藏夹。代码是这样的:当用户单击按钮时,脚本发送一个请求,如"?wpfpaction=add&postid=147",我有视频的id,如
<div class="wrap-box-video" id="424">
<div class="button_fav">
<a href="?wpfpaction=add&postid=424" rel=nofollow"><img src="blabla" /></a>
</div>
</div>
这是有可能使一个jQuery,而不是"button_fav",让我们说我有"addfav"answers"removefav"(我必须编码,以回应"addfav",如果视频不添加到收藏或"removefav",如果视频存在于收藏)当用户点击div与类"addfav"/"removefav"的jQuery提取id从class="wrap-box-video"和发送href"?wpfpaction=add&postid=424
"?
我设法使它工作与以下代码:
$(document).ready(function(){ $("div.addfav").click(function(e){ e.preventDefault(); alert(window.location.href.split('?')[0] + "?wpfpaction=add&postid=" + $(this).parents(".wrap-box-video").attr("id")); }); }
我的问题是现在,如何使这个工作,因为这只给我一个警报,如果我删除"Alert()"不工作,我希望这个加载而不是显示在url(不显示?wpfaction....url之后)
所以最终的HTML应该是这样的:
<div class="wrap-box-video" id="424">
<div class="addfav">
<a href="?wpfpaction=add&postid=424" rel="nofollow"><img src="blabla" alt="add" /></a>
</div>
</div>
<div class="wrap-box-video" id="425">
<div class="removefav">
<a href="?wpfpaction=add&postid=424" rel="nofollow"><img src="blabla" alt="remove" /></a>
</div>
</div>
jQuery创建动态URL:
$(document).ready(function(){
$("div.wrap-box-video a").click(function(e){
e.preventDefault();
if($(this).parent().hasClass('addfav'))
{
alert(window.location.href.split('?')[0] + "?wpfpaction=add&postid=" + $(this).parents('div.wrap-box-video').first().attr("id"));
}
else
{
alert(window.location.href.split('?')[0] + "?wpfpaction=remove&postid=" + $(this).parents('div.wrap-box-video').first().attr("id"));
}
});
});
假设您的移除URL为"wpfpaction=remove&postid=424"
JS小提琴
是的。鉴于
<div class="wrap-box-video" id="424">
<div class="button_fav">
<a href="?wpfpaction=add&postid=424" rel=nofollow"><img src="blabla" /></a>
</div>
</div>
使用jQuery,你的代码应该是这样的:
$(".button_fav").on('click', function() {
var id = $(this).closest('.wrap-box-video')[0].id;
window.location = "?wpfpaction=add&postid="+id;
});
有几种方法可以做到这一点,但最简单的方法可能是使用HTML数据元素(即data-id="yourIdNumber"
),然后在您的点击事件中放置这样的内容- $(this).closest('.wrap-box-video').data('id');
可以;
$('.button_fav').click(
function(){
var myHref = $(this).children("a").attr('href');
var videoId = $(this).parents(".wrap-box-video").attr("id");
}
);
相关文章:
- Yii2从点击链接开始加载模式
- 使用phonegap在jquery-mobile中链接页面/加载javascript的最佳实践是什么
- jQuery UI选项卡:在选项卡中加载链接/重新加载整个页面
- 如何生成一个唯一的链接,该链接将加载一个会话,其中包含客户端可用的某些文档
- 在单击链接时加载 HTMLImport (Polymer) .
- HTML 内容中的 CSS 链接在加载 HTML 时会引发错误
- 如何使用 ?parameter=only 链接重新加载页面并替换 Jquery Mobile 中的当前锚页面
- 单击链接时加载移动鼠标光标 3-4 秒
- 如果在 Chrome 中点击链接,加载微调器将保持打开状态
- 如何获得一个链接来加载隐藏溢出并在悬停时显示完整内容
- 如何在每次单击链接以加载新页面时停止加载其他资产
- Ruby-on-Rails JavaScript 未在链接上加载
- <a href>链接在加载javascript时无法工作
- 什么'这个错了吗?单击链接时加载页面
- jquery链接在加载下一页之前单击切换图像
- X-Editable Bootstrap字段只在第一个链接上加载
- 点击链接后加载模态
- Chrome动画链接页面加载
- jQuery fade "back to top"链接.页面加载链接可见性
- 链接动态加载的javascript