我想在系统配置选项卡中显示后端网格。为此我创建了一个按钮,onClick我调用了在控制器中编写的代码,并通过Ajax获取了'grid.php'的块。 这是控制器代码
$this->getResponse()->setBody( $this->getLayout()->createBlock('module/adminhtml_system_config_form_codegrid')->toHtml(),
$serialize_block = $this->getLayout()->createBlock('adminhtml/widget_grid_serializer'),
$serialize_block->initSerializerBlock('module/adminhtml_system_config_form_codegrid', 'getSelectedCode', 'code', 'selected_code')
);
我的问题是默认的分页和过滤器无法在网格上运行。 Fire Bug Show JS错误。 ReferenceError:未定义code_gridJsObject
code_gridJsObject.loadByElement(本)
答案 0 :(得分:0)
确保$ this-> setUseAjax(true);是用grid.php
Ajax调用返回的js代码默认不可执行,您必须执行类似
的操作 var code = transport.responseText; // Ajax returned text
var fieldset= document.getElementById('Configuration_Field_Set_Name');
fieldset.innerHTML = code;
var arr = fieldset.getElementsByTagName('script') // Get All Script Tags Returned by Ajax
// Last Step
for (var n = 0; n < arr.length; n++){
eval(arr[n].innerHTML)
}
希望它会有所帮助!!