在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函数的正确方法吗?
答案 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'