SugarCRM - 从视图调用js函数(例如editviewdefs.php)

时间:2012-05-13 11:56:54

标签: javascript view sugarcrm

在SugarCRM中,我想编辑主编辑视图,所以当用户将焦点留在其中一个文本框(onblur)上时,我可以调用js函数。 我编辑了editviewdefs.php文件 - 在'phone_work'中添加了'customcode',标签为:

array (
  array('name'=>'last_name',
        'displayParams'=>array('required'=>true),
  ),
  array(
  'name' => 'phone_work',
  'customCode' => '<input name="phone_work"  id="phone_work" size="30" maxlength="25" type="text" value="{$fields.phone_work.value}" onblur="hello()">'
  ),
),

如你所见,我调用了js函数hello()。 我使用admin将js函数添加到jssource \ src_files \ modules \ leads \ lead.js和重建JS压缩文件。 功能是这样的:

函数hello() {     警报( '阿萨夫'); }

它不起作用而且没有调用函数,为什么? 是在视图中使用js函数的正确方法吗?

1 个答案:

答案 0 :(得分:1)

您需要将其添加到名为custom / modules / Leads / Lead.js的js文件中。然后,将您自定义的editviewdefs.php文件复制到custom / modules / Leads / metadata /目录(如果尚未完成则创建它),并将其添加到它的末尾...

$viewdefs['Leads']['EditView']['templateMeta']['includes'][] = 'custom/modules/Leads/Lead.js';

但请注意,因为这些东西是版本特定的,花了我几个小时来弄清楚我的版本(SugarCRM CE 5.5)更像是Leads, EditView , templateMeta, includes, file, 'path'