从jquery中的href获取参数值
脚本
due today due in 2 days function pop() { var cat=**value of cat parameter in href** var type=**value of typ parameter in href** $.ajax({ type:'post', url:site_url()+'/event/deleteEventSingle', data:{'cat':cat,'type':typ}, async:false, success:function(result){} }); }
在此用户点击href时,同一弹出窗口会显示不同的数据。 实际上有超过10个hrefs,我试图在弹出窗口中显示用户输入数据的日历。 这取决于两个参数cat和typ ,如href所示。
需求
每个href都有自己的cat和typ值。 当单击href时,我希望使用jquery获取所点击的href的cat和typ值,以便我可以在ajax中传递这些变量。
var cat=**value of cat parameter in href** var type=**value of typ parameter in href**
试着
如何从click事件对象获取链接的href属性的参数
你可以做如下的事情
$('a').bind('click',function(){ var url = ($(this).attr('href')); var cat = getURLParameter(url, 'cat'); var typ = getURLParameter(url, 'typ'); //calling the ajax function pop(cat, typ) }); function getURLParameter(url, name) { return (RegExp(name + '=' + '(.+?)(&|$)').exec(url)||[,null])[1]; } function pop(cat, typ) { $.ajax({ type:'post', url:site_url()+'/event/deleteEventSingle', data:{'cat':cat,'type':typ}, async:false, success:function(result){} }); }
查看Live fiddle http://jsfiddle.net/mayooresan/aY9vy/上的示例
试试这个 :
function getUrlParams(url) { var params = {}; url.substring(1).replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { params[key] = value; }); return params; }
用法:
function pop(e) { var url = $(e.target).attr("href"); var params = getUrlParams(url); var cat= params["cat"]; var type= params["typ"]; alert(cat); alert(type); }
工作小提琴