[英]Setting field focus after javascript alert not working in MS CRM
我在字段的OnChange()事件中具有以下代碼。
alert("alert text");
crmForm.all.fieldname.SetFocus();
該頁面的行為就像沒有SetFocus調用一樣。
有人知道為什么嗎?
編輯:我也嘗試了以下無濟於事。
crmForm.all.fieldname.Focus();
crmForm.all.fieldname.focus();
alert("alert text", function() { crmForm.all.fieldname.SetFocus()});
在DOM中,將焦點設置在元素上的函數稱為focus()
,而不是SetFocus()
。
事實證明,在沒有最新匯總的情況下,在CRM 4中破壞了對調用OnChange()方法的字段的關注。 這是Microsoft KB文章的一個已知問題。
要實現將注意力集中在該字段上的錯覺,只需先將焦點設置到同一選項卡上的另一個字段,然后將焦點重新分配給調用OnChange()事件的字段,如下所示:
alert("alert text");
crmForm.all.some_other_field_on_the_same_tab.SetFocus();
crmForm.all.fieldname.SetFocus();
使用Xrm.Page
時,CRM 2011中似乎存在相同的問題-事件。
解決方法仍然有效:
Xrm.Page.getControl("name").setFocus(true);
Xrm.Page.getControl("TheFieldYouReallyWantToFocus").setFocus(true);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.