我正在尝试使用SVG内容动态填充表单的隐藏字段(javascript正在执行此任务)。
var outside = $('#teethMapSVG')[0].outerHTML;
console.log("update svg field");
var escapedValue = $('<div/>').text(outside).html();
$("#input_8_118").val(escapedValue);
它在客户端运行良好,但是一旦我保存表单,似乎SVG内容消失并且永远不会保存。 在我的对象钩子中:
add_filter( 'gform_save_field_value_8_118', array($this,'encode_svg_data'), 10, 5 );
我尝试保存我的svg值编码:
function encode_svg_data($value, $lead, $field, $form ) {
log_me("Encoding SVG data of size : ". strlen ( $value ));
return base64_encode( $value );
}
我想我的svg标签可能会被底层协议误解,所以我想将它编码为base64(这是一个好主意吗?),但我实际上从来没有访问过它的内容,即使是在提供的不同钩子中也是如此。储存之前形成重力。 该字段始终为空。
有什么想法吗?
非常感谢