我只想用form helper创建这样的按钮(带撇号['
])
<button type="button" data-button='{"func": "func1"}'>click1</button>
但是当实现一些代码时:
form_button(array(
'data-button' => '{"func": "func1"}',
'content' => 'click1',
)
)
结果是(引用["
])
<button type="button" data-button="{"func": "func1"}">click1</button>
我正在尝试检查元素,结果是:
<button type="button" data-button="{" func":"func1"}"="">click1</button>
当按钮单击时,按钮中的JSON表示this link的语法错误
两件事情,
form_button([$data = ''[, $content = ''[, $extra = '']]])
所以,你的功能应该是
form_button('', 'click1', array(
'data-button' => json_encode(array('func'=>'func1'))
)
);
your_project/system/helpers/form_helper.php
,找到函数_attributes_to_string
,找到行说,
$atts .= ' '.$key.'="'.$val.'"';,
改为
$atts .= ' '.$key.'="'.html_escape($val).'"';
这将解决您的问题。
改变
form_button(array(
'data-button' => '{"func":"func1"}',
'content' => 'click1',
)
)
至
$dbutton = array("func" => "func");
$data =array(
'data-button' =>json_encode($dbutton),
'content' => 'click1',
);
form_button($data);