如何更新Marketo隐藏字段的值?
我已经尝试过的
form.setValues({"Results_PDF_URL__c":"assignedCampaignID"});
form.vals({"Results_PDF_URL__c":"assignedCampaignID"});以上两个选项都不起作用。
所以我检查了id,如果我使用的是正确的id,当我试图获得id时,它在隐藏的marketo字段中为空白(空)。
虽然我可以获得输入文本标记文件的id (比如FirstName、Comapany.)--我无法获得任何隐藏的Marketo字段的id。
你知道我该怎么做才能让这件事奏效吗?
发布于 2017-05-02 20:11:54
只要它们在正确的范围内使用,这两种方法都应该有效。表单对象不是全局的。
MktoForms2.whenReady( function (form) {
form.vals({"Results_PDF_URL__c":"assignedCampaignID"});
});首先要确保MktoForms2 API是可用的,这样就不会出现错误。
if( typeof MktoForms2 != "undefined" ) {
MktoForms2.whenReady( function (form) {
form.vals({"Results_PDF_URL__c":"assignedCampaignID"});
});
}在Marketo中,可以在“管理”>“字段管理”>“导出字段名”下获得字段名。(需要Marketo管理员访问权限。)这将下载所有字段名的CSV。您将希望使用REST列中显示的字段名。
为了快速检查,我通常只需将想要的字段添加到表单中,并检查它们以获得正确的字段ID。
另外,您可以使用.addHiddenFields()而不是.vals()来确保表单b上的字段为a)作为隐藏字段,c)具有要传递给Marketo的正确值。如果字段已经存在,则此函数将检测字段并仅设置值。非常方便。
if( typeof MktoForms2 != "undefined" ) {
MktoForms2.whenReady( function (form) {
form.addHiddenFields({"Results_PDF_URL__c":"assignedCampaignID"});
});
}最后,您可能需要添加一个简短的延迟,以确保Marketo窗体库有足够的时间加载,并且在您查找表单时表单将在页面上可用。不太可能有人会在页面的前两秒内提交表单,所以在将字段/值添加到表单之前延迟两秒钟可能是可以的。
setTimeout( function(){
if( typeof MktoForms2 != "undefined" ) {
MktoForms2.whenReady( function (form) {
form.addHiddenFields({"Results_PDF_URL__c":"assignedCampaignID"});
});
}
}, 2000 ); // two-second delay资源:
https://stackoverflow.com/questions/40735236
复制相似问题