如何将div属性转换为json

时间:2016-03-31 15:09:08

标签: javascript jquery json

我有以下div

<div class="specialbreaek">

此div存储在JavaScript变量

我想将其转换为json,以便我可以轻松获得类名

我尝试过JSON.parse()但仍未获得所需的结果

任何帮助将不胜感激

提前致谢!

3 个答案:

答案 0 :(得分:1)

根据“JavaScript变量”的含义,我会看到一些解决方案。如果元素存储为字符串,则可以使用String.prototype.search()String.prototype.substring()的组合来提取类。例如:

var s = '<div class="specialbreaek">';
var index = s.search(new RegExp(/class=".*"/, 'i'));
s = s.substring(index + 7);
var index = s.search(new RegExp(/"/, 'i'));
s = s.substring(0,index);
document.write(s);

答案 1 :(得分:0)

如果我理解正确,你有div有几个属性,你想要提取它们(使用JS)并将它们转换为JSON字符串。

如果是这种情况,您可以使用它来提取所有属性,然后使用您想要将它们连接成JSON的任何方法

$(function() {
  var mydiv = $("#mydiv");
  var results = "";


  // The attributes property contains all attributes of an element
  $.each(mydiv.prop('attributes'), function(index, attr) {
    // this.attributes is not a plain object, but an array
    // of attribute nodes, which contain both the name and value
    results += attr.name + ":" + attr.value;
    results += ", ";
  });
  $("#res").text(results);
  console.log(results);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="mydiv" class="myclass" style="mystyle">
  my div text
</div>

<hr/>
<h2>results</h2>
<div id="res"></div>

答案 2 :(得分:0)

将javascript变量转换为Json是JSON.stringify

试试这个

$(function(){
  var element = $(".specialbreaek");
  var jsonstr = JSON.stringify(element);
  console.log(jsonstr);
})

它会输出这个。

{"0":{},"length":1,"prevObject":{"0":{},"context":{},"length":1},"context":{},"selector":".specialbreaek"}