我有一个自定义模块,这个模块生成一个带有一些按钮的表。当单击一个按钮时,我使用Ajax加载一个表单,在div中显示它。调用该函数的钩子菜单是例如/ myapp / get_form。
当我必须保存新生成的div的一些数据时,问题出现了。我创建了div以使用ajax保存数据($ form [' submit'] = array('#ajax' => array(...))),但是这个新的表单不会使用ajax保存数据,此表单将数据发布到/ myapp / get_form,但这不是我需要的行为。
所以我有2个问题。
谢谢!
答案 0 :(得分:0)
您可以使用jQuery .submit方法来阻止默认提交行为并处理它。$ .post
请注意,某些字段/模块和#ajax需要包含在整页加载中的其他javascripts。
要获得它们,您应该使用类似$ js_list = drupal_add_js()的内容检索它们,然后使用jquery将其添加到当前页面(例如,将它们作为标记添加到当前页面的头部。)
加载脚本后,调用Drupal.attachBeahviors()将新加载的javascript功能附加到新表单。