在Plone4/Zope3下,我有一个用于添加新对象的表单。
我想在第一个字段后面添加一个按钮,以执行以下操作:-用户输入第一个字段的值-他按下这个新按钮-服务器将尝试根据第一个字段和外部数据库来猜测剩余的字段。-然后,用户必须检查所有字段是否都正确,然后提交表单。
我不是zope专家,我花了一些时间试图弄清楚如何做到这一点。
创建子窗体是个好主意吗?
如果没有,我可以在表单中添加一个新按钮:我尝试了@button.buttonAndHandler(_(u'Essai')) def essai(self,action):print "button essai“
但是我有以下问题:-如何在第一个字段之后而不是底部呈现按钮?-如何在不提交表单的情况下更新其余字段?-如何保留“添加”和“取消”按钮,这些按钮在我添加这个essai按钮时消失了。
有什么提示吗?Thx
发布于 2012-05-02 18:23:29
我建议使用javascript来解决这个问题。使用jquery,您可以在第一个字段(http://api.jquery.com/after)后面添加一个额外的按钮。在按钮操作中,向浏览器视图询问json (http://docs.python.org/library/json.html)格式的搜索结果,并填写其他表单字段,例如:
jq('my-button').click(function(event) {
event.preventDefault();
var first_field= jq('#first-field-id').val();
jq.getJSON('/@@my-browser-view?value=' + value, function(result) {
jq('#other-field-id').val(result.val_for_other_field);
...
});
});https://stackoverflow.com/questions/10121739
复制相似问题