javascript - html 5属性作为对象数组被视为字符串

标签 javascript jquery html json

我正在尝试创建一个代码片段,从数据库中获取位置、标记文本等谷歌地图对象,并将其添加到 html 数据属性中,以便我可以轻松地在 javascript 中使用它们

我无法让 js 将 json 理解为 json,而是将其视为字符串

	jQuery('.map_canvazz').each(function(i,elem) {
		latPos			=	jQuery(this).attr("data-lat");
		longPos			=	jQuery(this).attr("data-long");
		infoDisplay		=	jQuery(this).attr("data-info");
		var objAddresses=	jQuery(this).attr("data-params");
        
      if(typeof objAddresses != 'undefined'){
			console.log(typeof(objAddresses));
			console.log(objAddresses);
			//array of object is treated as string
            // unable to convert array of objects as json
            // todo :- loop through the object of array
		}
      
      })
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class='map_canvazz' id='maper1'   data-params='[{"lat":"-36.758435","long":"144.273174","mapTxt":"<div class=\"mapArea\"><div class=\"lineOneMap\">Beyond Medical Education Victorian Office<\/div><div class=\"lineTwoMap\">37 Rowan Street<br>Bendigo VIC 3550, Australia<br>+61 35441 9300<\/div><\/div>"},{"lat":"1111","long":"222","mapTxt":"test"}]'></div>					</div>

最佳答案

属性值只能是字符串。如果您想将 JSON 字符串转换为 JavaScript 对象,则应通过 JSON.parse() 运行它。

关于javascript - html 5属性作为对象数组被视为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27889876/

相关文章:

javascript - 需要 JQuery 建议

javascript - Angularjs 路由解析

javascript - 如何为你的 javascript 制定计划

javascript - 如何根据浏览器缩放自动调整数据表

javascript - jQuery 自动完成图像

html - 使用 HTML 和 CSS 的堆积条形图

javascript - JQuery 只获取元素的文本而不是子元素的文本

javascript - 如何在页面底部显示一个 div,然后跳转到它?

javascript - 如何将 div 元素移动到另一个 div 元素内?

javascript - WordPress/PHP : create an upvote button that does not refresh page