HTML 요소의 속성에 JSON 개체를 넣어야합니다.
HTML은 유효성을 검사 할 필요가 없습니다.Quentin의 답변 : 유효한 HTML5 인 속성에 JSON을 저장합니다
data-*
.JSON 객체는 모든 크기가 될 수 있습니다.
답변 : Maiku Mori : HTML 속성의 제한은 잠재적으로 65536 자 입니다.
JSON에 특수 문자가 포함되어 있으면 어떻게됩니까? 예 :
{foo: '<"bar/>'}
Quentin에 의해 답변 됨 : 일반적인 규칙에 따라 JSON 문자열을 속성에 넣기 전에 인코딩하십시오. PHP를 들어, 사용 기능 .
htmlentities()
편집-PHP 및 jQuery를 사용하는 예제 솔루션
HTML 속성에 JSON 쓰기 :
<?php
$data = array(
'1' => 'test',
'foo' => '<"bar/>'
);
$json = json_encode($data);
?>
<a href="#" data-json="<?php echo htmlentities($json, ENT_QUOTES, 'UTF-8'); ?>">CLICK ME</a>
jQuery를 사용하여 JSON 검색 :
$('a').click(function() {
// Read the contents of the attribute (returns a string)
var data = $(this).data('json');
// Parse the string back into a proper JSON object
var json = $.parseJSON($(this).data('json'));
// Object now available
console.log(json.foo);
});
data-json
당신이 사용해야 $(this).data('json')
한다면 jQuery는 그 부분을 다루었습니다.