如何处理TYPO3中的大json字符串
我开发了一个小小的订单扩展,客户可以在这里设计名片。此扩展使用与fabric.js关联的画布 客户可以添加一些文本、简单表单、图像等,她的定制结果是一个json字符串,我通过jquery将其绑定到一个隐藏输入,以便在提交表单时将该数据存储在属性图像中 流体:如何处理TYPO3中的大json字符串,json,canvas,fabricjs,hidden-field,typo3-6.2.x,Json,Canvas,Fabricjs,Hidden Field,Typo3 6.2.x,我开发了一个小小的订单扩展,客户可以在这里设计名片。此扩展使用与fabric.js关联的画布 客户可以添加一些文本、简单表单、图像等,她的定制结果是一个json字符串,我通过jquery将其绑定到一个隐藏输入,以便在提交表单时将该数据存储在属性图像中 流体: <f:form.hidden class="custom-image" property="image" /> HTML结果: <input class="custom-image" type="hidden" name
<f:form.hidden class="custom-image" property="image" />
HTML结果:
<input class="custom-image" type="hidden" name="tx_example_orderform[step3data][image]" value="{"objects":[{"type":"rect","originX":"left","originY":"top","left":761,"top":181,"width":50,"height":50,"fill":"#68e5e7","stroke":null,"strokeWidth":1,"strokeDashArray":null,"strokeLineCap":"butt","strokeLineJoin":"miter","strokeMiterLimit":10,"scaleX":1,"scaleY":1,"angle":0,"flipX":false,"flipY":false,"opacity":0.8,"shadow":null,"visible":true,"clipTo":null,"backgroundColor":"","fillRule":"nonzero","globalCompositeOperation":"source-over","transformMatrix":null,"params":{"base":1,"x":761,"y":181,"scaleX":1,"scaleY":1},"rx":0,"ry":0}],"background":""}">
当json字符串不太大时,这非常有效,但是当json字符串太长时,我会得到一个空白页面,并且不会呈现任何内容,但是如果我调试图像属性,我可以看到仍然设置了属性图像:
有什么建议吗?
也许有更好的方法来存储json字符串并将其从js传递到php或从php传递到js吗
希望您能帮助我:有没有办法定制ViewHelper?您觉得ViewHelper会很棒吗?
<input class="custom-image" type="hidden" name="tx_example_orderform[step3data][image]" value="{"objects":[{"type":"rect","originX":"left","originY":"top","left":761,"top":181,"width":50,"height":50,"fill":"#68e5e7","stroke":null,"strokeWidth":1,"strokeDashArray":null,"strokeLineCap":"butt","strokeLineJoin":"miter","strokeMiterLimit":10,"scaleX":1,"scaleY":1,"angle":0,"flipX":false,"flipY":false,"opacity":0.8,"shadow":null,"visible":true,"clipTo":null,"backgroundColor":"","fillRule":"nonzero","globalCompositeOperation":"source-over","transformMatrix":null,"params":{"base":1,"x":761,"y":181,"scaleX":1,"scaleY":1},"rx":0,"ry":0}],"background":""}">
<script type="text/javascript">
<![CDATA[var jsonCanvasString = ]]>
<f:if condition="{step3data.image}">
<f:then>
<f:format.htmlentitiesDecode>{step3data.image}</f:format.htmlentitiesDecode>
</f:then>
<f:else>
''
</f:else>
</f:if>
<![CDATA[;]]>
</script>
if (typeof jsonCanvasString !== 'undefined') {
canvas.loadFromJSON(jsonCanvasString, canvas.renderAll.bind(canvas));
}