我试图自己设置jQuery一个函数,并在单击事件触发时调用该函数。以下是我设法提出的代码:
HTML:
<input type="text" class="form-control email_input" name='email' id="reserve_email_1" placeholder="Email">
<span class='input-group-btn'>
<button type="submit" id="subscribe_1" class="btn btn-success subscribe_button">Send now</button>
</span>
JS:
$(document).ready(function(){
$('.subscribe_button').click(function(){
$.fn.Subscribe();
});
$.fn.Subscribe = function(){
var email = $(this).parent().siblings('.email_input').val();
alert(email);
}
});
但无论我在电子邮件输入中有什么价值,它都不会在警报中弹出。我测试过并且没有认为它是错误的遍历顺序,而是第一个函数无法调用第二个函数。关于它为什么会发生的任何建议?
最佳,
答案 0 :(得分:4)
Subscribe
是一个插件方法,所以你需要像jQuery插件一样调用它(这样该方法将获得this
的正确上下文值)
$('.subscribe_button').click(function () {
$(this).Subscribe();
});
演示:Fiddle