How to prevent the keyboard appearance

I don’t know if this is the correct way to do it, but I added a div that is styled like an input box to avoid the keyboard opening. It looks like this (I have some custom styling in mine):

<div ng-click="showDatePickerModal()" class="item item-input item-icon-right item-separator">
    <span class="input-label">Date</span>
    <span ng-if="date">{{date | date : 'EEEE, MMM d, y'}}</span>
</div>

So in your case you could call opendateModal() in the ng-click of the entire div or just the span where you show the date. I like this way because I can display the date how I want to.

Which keyboard plugin did you use? Have you tried using ionic-plugins-keyboard: cordova.plugins.Keyboard.close()?