从url参数获取值以替换html 5数据属性

时间:2013-09-27 14:57:30

标签: jquery html5 url attributes

我有这个div:

<div id="accordion-63-52453407315c8" 
     class="wk-accordion wk-accordion-default clearfix"  
     data-widgetkit="accordion"
     data-options='{"style":"default", 
                    "collapseall":1, 
                    "matchheight":0, 
                    "index":-1, 
                    "duration":500, 
                    "width":"auto", 
                    "order":"default"}'>

如何使用Jquery代码从参数get by url string更改data-option属性中的索引值?

www.myurl.com?index=4

3 个答案:

答案 0 :(得分:1)

怎么样:

var obj = $("#accordion-63-52453407315c8").data("option");
var index = obj.index;

答案 1 :(得分:1)

让我们通过以下两个步骤解决这个问题:

  1. 我们需要从网址中检索索引。
  2. 我们需要更新`data-options`属性中的值。
  3. 我们现在就做。

    获取索引:

    var url = window.location.href;
    var index = null;
    if(url.lastIndexOf('?') != -1) {
        index = url.split('?')[1];
        index= index.split('=')[1];
    }
    

    修改data属性:

    var $accordian = $('#accordion-63-52453407315c8');
    var obj = $accordian.data("options");
    obj.index = parseInt(index);
    $accordian.data("options", obj);
    

    Here是一个演示如何运作的小提琴。

    希望这有帮助。

答案 2 :(得分:0)

工作DEMO

试试这个

将此添加到您的头部以获取查询字符串

 <script src='https://rawgithub.com/allmarkedup/purl/master/purl.js'>
 </script> 

,代码是

 var index1=$.url('http://www.myurl.com?index=4').param('index');
    $('#accordion-63-52453407315c8').data('options').index=index1; //assigning value to the index 

如果您想从当前网址获取参数

 var index1=$.url(window.location.href).param('index');
 $('#accordion-63-52453407315c8').data('options').index=index1;