$(this).data('question-options')
前两个返回为 array, 第三个返回 string. 这是为什么?怎么能让第三个也是 array?
![]() | 1 lbfeng OP <div ... data-question-optiOns="[]"> <div ... data-question-optiOns="[]"> <div ... data-question-optiOns="[]"> |
![]() | 2 lbfeng OP 对比这两个 <div ... data-question-optiOns="[]"> <div ... data-question-optiOns="['Yes', 'No']"> |
![]() | 3 emric 2016-04-21 03:02:46 +08:00 通常这种问题都是弱智错误。 先用 https://jsfiddle.net/ 写个 demo 吧。 |
![]() | 4 lbfeng OP @emric 搞明白了 data 会掉用 jQuery.parseJSON() 处理含有‘[’的字符串将其转换成 array 。但['Yes', 'No']中的 ' 会引发错误。 Uncaught SyntaxError: Unexpected token ' in JSON at position 1 |
![]() | 5 lbfeng OP , 也会引发错误。 |
![]() | 6 lbfeng OP 有什么方法能把['Yes', 'No']转换成 array? |
![]() | 7 emric 2016-04-21 03:34:32 +08:00 ![]() 把他变成符合 json 规则的字符。 E.g: `<div data-test='["a", "b"]'>` |
![]() | 8 jarlyyn 2016-04-21 08:16:19 +08:00 via Android 这不是应该用 attr 取么 |
9 YuJianrong 2016-04-21 10:55:03 +08:00 问题在于为什么要用垃圾 jQuery 。 |