javascript - 格式化表单输入字段会解除我的 ng-model 的绑定(bind)

标签 javascript jquery forms angularjs

我有一个表单,我正在尝试使用 Angular JS 提交

其中一个字段需要生成埃塞俄比亚日历,因此我使用外部 javascript 库来显示此日期 - 此处可用 http://keith-wood.name/calendarsRef.html

要显示日期选择器,请创建一个输入文本,如下所示:

<input type="text" id="ethiopianDOB" ng-model='Ethiopian'

以及相应的javascript

$( "#ethiopianDOB" ).calendarsPicker({
    calendar: $.calendars.instance('ethiopian')
}); 

但是,这会干扰我的 ng-model 绑定(bind),因此无法访问 $scope 中的变量(我在表单提交时查看了对象,并且没有像 $scope.Ethiopian 这样的项目

我正在寻找方法
1. 保留 ng-model 的绑定(bind) OR
2. 不需要 javascript 来实例化日历或
3.改进我解决这个问题的方法

谢谢

最佳答案

如果可能的话,您不应该混合使用 JQuery 和 Angular。尝试“从 Angular 思考”,而不是依赖 JQuery。

这是一篇关于此主题的精彩文章:"Thinking in AngularJS" if I have a jQuery background?

话虽这么说,您应该尝试用 Angular 指令(例如 Angular UI Bootstrap 中的日期选择器)替换 JQuery 日历。我不知道他们是否有埃塞俄比亚日历,但你总是可以建立自己的日历。

这可以解决您的问题。

希望这有帮助。

关于javascript - 格式化表单输入字段会解除我的 ng-model 的绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24668759/

相关文章:

javascript - 无法设置经度从 -180 到 0 的 LatLngBounds

javascript - 如何在HTTP请求后调用回调方法

javascript - 单击一个 div 将其展开并单击它以使用 javascript 将其关闭

jquery - 在汉堡菜单中隐藏列表项

php - Laravel 表单标签中的内联 "required"星号

javascript - 基于另一列填充 BootstrapTable x-可编辑选择框

jQuery 滚动动画到特定位置

javascript - 为什么 Javascript 不能在附加模式下工作?

forms - 如何自动创建包含来自自定义 SharePoint 列表的列表字段的 Word 文档?

javascript - 将表单数据保存到序列化数组 Javascript 后重新填充表单