Dynamic CRM 2013學習筆記(二十八)用JS動態設定欄位的change事件、必填以及可見

來源:互聯網
上載者:User

標籤:

我們知道通過介面設定欄位的change事件,是否是必填,是否可見非常容易。但有時我們需要動態地根據某些條件來設定,這時有需要通過js來動態地控制了。

下面分別介紹如何用js來動態設定。

 

一、動態設定欄位的change事件

// form on load event
function onLoad() {
    init();
 
    pageAttr.delivery_from.addOnChange(deliveryFromChange);
    pageAttr.type.addOnChange(typeChange);
    pageAttr.order_purpose.addOnChange(orderPurposeChange);
    pageAttr.ship_toid.addOnChange(getShiptoInfo);
 
    pageAttr.sold_toid.addOnChange(orderByChange);
}

其中的init方法及pageAttr、page請參考我的這篇部落格《Dynamic CRM 2013學習筆記(二十三)CRM JS智能提示(CRM 相關的方法、屬性以及頁面欄位),及發布前調試

這裡的addOnChange就跟在form頁面,添加欄位OnChange事件一樣,但在js裡更靈活

 

二、動態設定欄位為必填或取消必填

設定必填方法:setRequiredLevel(‘required‘)

取消必填:setRequiredLevel(‘none‘)

var df = pageAttr.delivery_from.getText();
  if (df == "Others") {
      pageAttr.deliveryfrom_plsspecify.setRequiredLevel(‘required‘);
  }
  else {
      pageAttr.deliveryfrom_plsspecify.setRequiredLevel(‘none‘);
  }

 

三、動態設定欄位是否可見

設定可見:setVisible(true)

設定不可見:setVisible(false)

var op = pageAttr.order_purpose.getText();
    if (op == "Replacement of Return materials") {
        page.rma_noid.setVisible(true);
    }
    else {
        page.rma_noid.setVisible(false);
    }

但需要注意的是這裡就不是attribute了,這裡只能設定在control上。

 

 

Dynamic CRM 2013學習筆記 系列匯總 -- 持續更新中

Dynamic CRM 2013學習筆記(二十八)用JS動態設定欄位的change事件、必填以及可見

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.