Vue.js:从DOM中拉入数据——特别是form action属性
Vue.js: Pull in data from DOM - Specifically form action attribute
是否有可能使用Vue创建某种绑定,使Vue实例中的数据项从DOM初始化?
具体来说,在我的例子中,我希望我的Vue实例接收表单元素的action
属性。
<form action="path/to/script.php" id="my-form">
</form>
我的Vue元素是这样的
new Vue({
el: 'my-form',
data: {
action: '' // I want this item to receive 'path/to/script.php' on load
},
compiled: function() {
console.log(this.action); // Should output 'path/to/script.php'
}
});
我试过这样做,但无济于事。DOM中的动作被删除以匹配action
数据项:
<form action="path/to/script.php" v-bind:action="action">
</form>
谢谢
你所要求的是有点不寻常的,因为视图模型通常不会从视图中提取数据,它提供数据给它,所以你需要一个自定义指令。
我在下面写的代码接受一个属性的名称和一个数据成员的名称并进行赋值。
Vue.directive('initialize', {
params: ['item','attr'],
bind: function() {
this.vm[this.params.item] = this.el.getAttribute(this.params.attr);
}
});
new Vue({
el: '#my-form',
data: {
action: '' // I want this item to receive 'path/to/script.php' on load
},
compiled: function() {
console.log('Action:', this.action); // Should output 'path/to/script.php'
}
});
<script src="//cdnjs.cloudflare.com/ajax/libs/vue/1.0.26/vue.min.js"></script>
<form id="my-form" action="path/to/script.php" v-initialize attr="action" item="action">
</form>
我设法得到某种工作使用props
。action
属性并没有完全绑定到data
中,但它可以从Vue实例中以相同的方式访问,即this.action
。
<form action="path/to/script.php" id="my-form">
</form>
Javascript: new Vue({
el: '#my-form',
props: {
'action'
},
compile: function() {
console.log(this.action); // Outputs 'path/to/file.php'
}
});
相关文章:
- 如何将chrome扩展功能移植到移动设备(特别是jquery和trello)
- 从网站(特别是Trello.com)获取JSON文件
- 使javascript警报/确认对话框更加可见(特别是在Google Chrome浏览器中)
- 特别是将javascript添加到类中,而不是添加到另一个类中
- Piwik自定义插件开发/JQPlot(特别是:Piwik 1.7.1中的seriesPicker)
- 多文件上传,支持所有浏览器,特别是ie7,ie8和ie9
- 如何从浏览器中删除Skype呼叫工具?特别是Chrome
- 编译用于调试的私有api——特别是_enableRemoteInspector
- 如何模拟AngularJS中的构造函数(特别是Date()构造函数)
- 究竟如何getElementsByClassName工作在Chrome?,特别是w.r.t. NodeLists &;延
- 如何轻松运行本地内容(javascript, Flash),特别是在IE11中
- 如何抑制退格时,日期字段日历是活跃的extjs 4,特别是在IE中
- 在包含相对".js"后缀的npm包中使用aurelia-cli需要导入(特别是autobahn)
- Node.js有哪些调试选项?特别是在Visual Studio Code中
- HTML5视频显示时间在Javascript -特别是秒
- AJAX构建和部署环境,特别是javascript和css min,完整版本
- 如何从HTML表中提取数据,特别是<td id=“;单词“>,使用JavaScript
- Vue.js:从DOM中拉入数据——特别是form action属性
- 需要帮助理解angular ui-router,特别是将mongodb数据从一个状态传递到另一个状态
- 特别是在D3.js中将数据转换成颜色