繁体   English   中英

不是在crm 2011中从“功能区”按钮触发Javascript吗?

[英]Javascript is not triggering from Ribbon button in crm 2011?

我在约会实体中创建了2个功能区按钮,这些按钮的功能为,单击时将分别打开一个新的电话和任务,但未打开任务。电话工作正常。请提出建议。

请参阅RibbonDiffxml

<RibbonDiffXml>
        <CustomActions>
          <CustomAction Id="test.Form.appointment.MainTab.Include.AddExisting.CustomAction" 

Location="Mscrm.Form.appointment.MainTab.Include.Controls._children" Sequence="41">
            <CommandUIDefinition>
              <Button Id="test.Form.appointment.MainTab.Include.AddExisting" Command="test.Form.appointment.MainTab.Include.AddExisting.Command" Sequence="9" 

ToolTipTitle="$LocLabels:test.Form.appointment.MainTab.Include.AddExisting.LabelText" 

LabelText="$LocLabels:test.Form.appointment.MainTab.Include.AddExisting.LabelText" 

ToolTipDescription="$LocLabels:test.Form.appointment.MainTab.Include.AddExisting.Description" TemplateAlias="o1" 

Image16by16="/_imgs/ribbon/AddExistingStandard_16.png" Image32by32="/_imgs/ribbon/AddExistingStandard_32.png" />
            </CommandUIDefinition>
          </CustomAction>
          <CustomAction Id="test.Form.appointment.MainTab.Include.addphone.CustomAction" Location="Mscrm.Form.appointment.MainTab.Include.Controls._children" 

Sequence="41">
            <CommandUIDefinition>
              <Button Id="test.Form.appointment.MainTab.Include.addphone" Command="test.Form.appointment.MainTab.Include.addphone.Command" Sequence="8" 

ToolTipTitle="$LocLabels:test.Form.appointment.MainTab.Include.addphone.LabelText" 

LabelText="$LocLabels:test.Form.appointment.MainTab.Include.addphone.LabelText" 

ToolTipDescription="$LocLabels:test.Form.appointment.MainTab.Include.addphone.Description" TemplateAlias="o1" Image16by16="/_imgs/ribbon/entity16_4210.png" 

Image32by32="/_imgs/ribbon/entity32_4210.png" />
            </CommandUIDefinition>
          </CustomAction>
          <CustomAction Id="test.Form.appointment.MainTab.Include.AddTask.CustomAction" Location="Mscrm.Form.appointment.MainTab.Include.Controls._children" 

Sequence="41">
            <CommandUIDefinition>
              <Button Id="test.Form.appointment.MainTab.Include.AddTask" Command="test.Form.appointment.MainTab.Include.AddTask.Command" Sequence="10" 

ToolTipTitle="$LocLabels:test.Form.appointment.MainTab.Include.AddTask.LabelText" 

LabelText="$LocLabels:test.Form.appointment.MainTab.Include.AddTask.LabelText" 

ToolTipDescription="$LocLabels:test.Form.appointment.MainTab.Include.AddTask.Description" TemplateAlias="o1" Image16by16="/_imgs/ribbon/entity16_4212.png" 

Image32by32="/_imgs/ribbon/entity32_4212.png" />
            </CommandUIDefinition>
          </CustomAction>
        </CustomActions>
        <Templates>
          <RibbonTemplates Id="Mscrm.Templates"></RibbonTemplates>
        </Templates>
        <CommandDefinitions>
          <CommandDefinition Id="test.Form.appointment.MainTab.Include.AddExisting.Command">
            <EnableRules />
            <DisplayRules />
            <Actions>
              <Url WinMode="0" Address="$webresource:testes_TaskPhoneCallLookup">
                <CrmParameter Value="FirstPrimaryItemId" Name="data" />
              </Url>
            </Actions>
          </CommandDefinition>
          <CommandDefinition Id="test.Form.appointment.MainTab.Include.addphone.Command">
            <EnableRules />
            <DisplayRules />
            <Actions>
              <JavaScriptFunction FunctionName="createPhone" Library="$webresource:testcrm_/Scripts/test.Wealthmgmt.Appointment.Buttons" />
            </Actions>
          </CommandDefinition>
          <CommandDefinition Id="test.Form.appointment.MainTab.Include.AddTask.Command">
            <EnableRules />
            <DisplayRules />
            <Actions>
              <JavaScriptFunction FunctionName="createTask" Library="$webresource:testcrm_/Scripts/test.Wealthmgmt.Appointment.Buttons" />
            </Actions>
          </CommandDefinition>
        </CommandDefinitions>
        <RuleDefinitions>
          <TabDisplayRules />
          <DisplayRules />
          <EnableRules />
        </RuleDefinitions>
<LocLabels>
          <LocLabel Id="test.Form.appointment.MainTab.Include.AddExisting.Description">
            <Titles>
              <Title languagecode="1033" description="Add Task and Phone Call" />
            </Titles>
          </LocLabel>
          <LocLabel Id="test.Form.appointment.MainTab.Include.AddExisting.LabelText">
            <Titles>
              <Title languagecode="1033" description="Add Existing Activity" />
            </Titles>
          </LocLabel>
          <LocLabel Id="test.Form.appointment.MainTab.Include.addphone.Description">
            <Titles>
              <Title languagecode="1033" description="Add a new phone call" />
            </Titles>
          </LocLabel>
          <LocLabel Id="test.Form.appointment.MainTab.Include.addphone.LabelText">
            <Titles>
              <Title languagecode="1033" description="Add Phone Call" />
            </Titles>
          </LocLabel>
          <LocLabel Id="test.Form.appointment.MainTab.Include.AddTask.Description">
            <Titles>
              <Title languagecode="1033" description="Add new Task" />
            </Titles>
          </LocLabel>
          <LocLabel Id="test.Form.appointment.MainTab.Include.AddTask.LabelText">
            <Titles>
              <Title languagecode="1033" description="Add Task" />
            </Titles>
          </LocLabel>
        </LocLabels>
      </RibbonDiffXml>

Javascript是

function createTask(){


var guidCaller=Xrm.Page.data.entity.getId();
//alert(guidCaller);
var orgName = Xrm.Page.context.getServerUrl();
var extraqs = "&subject=New Task";
extraqs += "&hpcrm_timeblockid="+guidCaller;
var features = "location=no,menubar=no,status=no,toolbar=no,resizable=yes";
window.open(orgName+"main.aspx?etn=task&pagetype=entityrecord&extraqs=" + encodeURIComponent(extraqs), "_blank", features, false);


}


function createPhone(){

var guidCaller=Xrm.Page.data.entity.getId();
//alert(guidCaller);
var orgName = Xrm.Page.context.getServerUrl();
var extraqs = "&subject=New Phone Call";
extraqs += "&hpcrm_timeblockid="+guidCaller;
var features = "location=no,menubar=no,status=no,toolbar=no,resizable=yes";
window.open(orgName+"main.aspx?etn=phonecall&pagetype=entityrecord&extraqs=" + encodeURIComponent(extraqs), "_blank", features, false);

}

我猜测某些部署不正确。 使用调试器(F12)为createTask()createPhone()都在功能区javascript中放置一个断点。 如果断点被击中,而不是任务被击中,那么您可能应该尝试重新部署功能区XML。 如果您遇到断点,则可能是javascript错误,请逐步解决并找出原因。

注意! 用于设置断点的javascript文件的名称将不是test.Wealthmgmt.Appointment.Buttons。 这将是脚本块(一些随机数)。

我之前遇到过..尝试重置IIS ,然后刷新您的页面..如果相同

行为仍然存在,您应确保已调用该函数并执行此操作

应该在函数的第一行中发出警报,如果该行为仍然存在,请重新部署

再次解决

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM