流星和语义UI,模态获取价值
meteor and semantic UI, modal get value
我想使用语义UI将表单放入模态中。我找不到在模板事件中获取表单值的方法。。。你能帮我吗?
这是JS:
Template.riderForm.events({
'click .newRiderButton': function(event) {
event.preventDefault();
$('.ui.modal').modal('show');
},
'click #new-rider-submit': function(event) {
event.preventDefault();
var firstname = event.target.firstname.value;
var lastname = event.target.lastname.value;
Riders.insert({
firstname: firstname,
lastname: lastname,
createdAt: new Date()
});
event.target.firstname.value = "";
event.target.lastname.value = "";
$('.ui.modal').modal('hide');
}
});
Html:
<template name="riderForm">
<button
class="ui button icon right labeled teal newRiderButton"
type="newRiderButton"
name="newRiderButton">
<i class="right checkmark icon"></i>New rider
</button>
<div class="ui large modal">
<i class="close icon"></i>
<div class="header">Add someone</div>
<form class="ui form new-rider content">
<div class="field">
<div class="two fields">
<div class="four wide field">
<label>First name</label>
<input type="text" name="firstname" placeholder="First name">
</div>
<div class="four wide field">
<label>last name</label>
<input type="text" name="lastname" placeholder="Last name">
</div>
</div>
</div>
<div class="actions">
<div id="new-rider-submit" class="ui positive right labeled icon button">
<i class="right checkmark icon"></i>Send
</div>
</div>
</form>
</div>
</template>
我不明白,因为它甚至没有进入事件功能。。。(尝试使用控制台.log…
你能帮我吗?
idk为什么事件没有触发,但您可以使用批准/拒绝回调
Template.riderForm.events({
'click .newRiderButton': function(event) {
event.preventDefault();
$('.ui.modal')
.modal({
onApprove : function() {
console.log('click #new-rider-submit');
var firstname = $('input[name="firstname"]').val();
var lastname = $('input[name="lastname"]').val();
Riders.insert({
firstname: firstname,
lastname: lastname,
createdAt: new Date()
});
$('input[name="firstname"]').val("");
$('input[name="firstname"]').val("");
$('.ui.modal').modal('hide');
}
})
.modal('show');
}
});
http://semantic-ui.com/modules/modal.html#approve--拒绝回调
不能很清楚地说明为什么你的事件没有启动,它应该是。
然而,您获取字段值的逻辑:
var firstname = event.target.firstname.value;
var lastname = event.target.lastname.value;
是不正确的,因为event.target
将是#new-rider-submit
div,而不是.ui.large.modal
div。您可以很容易地通过名称获取字段值:
var firstname = $('input[name="firstname"]').val();
var lastname = $('input[name="lastname"]').val();
我没有找到原因,但在模态中定义的模板元素的事件没有在流星中触发。但是如果您将模态内容分离到另一个模板并将事件附加到它们。并且只在模态中渲染它们,它们是完美的!!!!
这不起作用
HTML
<template name="firstModal">
<div id="firstModal" class="ui wide modal">
<i class="close icon"></i>
<input type="button" class="ui button" value="click me">
</div>
</template>
JS
Template.firstModal.events({
'click .button': function(event, template){
alert('click !!!!!!!')
}
});
但这太完美了
HTML
<template name="firstModal">
<div id="firstModal" class="ui wide modal">
<i class="close icon"></i>
{{>firstModalContent}}
</div>
</template>
<template name="firstModalContent">
<input type="button" class="ui button" value="click me">
</template>
JS
Template.firstModalContent.events({
'click .button': function(event, template){
alert('click !!!!!!!')
}
});
同样的答案。。。
相关文章:
- 如何传递和获取模态值
- jquery模态对话框通过id获取输入类型text的值
- 获取表单值并在提交时将其传递给Bootstrap模态
- 从模态 AngularJS 获取数据
- 华丽的弹出模态问题“获取内联”
- 如何在语义UI中使用模态自动获取不同的图像
- 获取 AngularJS 应用程序以在单击时显示模态
- 无法从模态元素 Angular JS 获取$file
- 使用 jquery ajax 从 Bootstrap 3 模态表单获取数据
- 如何获取不同的模态内容
- 如何获取jquery和模态窗口的按钮ID
- 如何将请求发送到服务器以获取我在ember中的模态对话框的数据
- 获取<输入类型=“;文本“>它是在模态中动态创建的
- JQuery:从提交的模态对话框中获取值
- 流星和语义UI,模态获取价值
- 获取HTML表中的ROW ID,以便在模态jQuery中使用;PHP
- 从另一个页面获取Bootstrap's模态内容
- 从jquery模态弹出框中获取文本框值,其中包含重复器控件
- 如何获取'id'从一个开放的引导模态
- 物化获取模态触发器元素