Dav*_*ave 1 forms cookies jquery
我想在用户提交表单时设置cookie.
我正在使用一些基于用户选中复选框设置cookie的遗留代码,但是这样可以在用户提交表单时简单地设置cookie.
这是我所拥有的,当选中复选框时,它有效:
$().ready(function()
{
$('.application-form').submit(function(e)
{
e.preventDefault();
if ($('.application-form input[name=marketing]').is(':checked'))
{
$.cookie('agreed_to_terms', '1', { path: '/', expires: 999999 });
}
});
});
Run Code Online (Sandbox Code Playgroud)
这工作正常,但我不想在检查"营销"输入时设置cookie,而只是在表单提交时.像这样:
$().ready(function()
{
$('.application-form').submit(function(e)
{
e.preventDefault();
if ($('.application-form').submit();)
{
$.cookie('agreed_to_terms', '1', { path: '/', expires: 999999 });
}
});
});
Run Code Online (Sandbox Code Playgroud)
但是,这并没有成功设置cookie,任何想法都会很棒,谢谢.
$(document).ready(function() {
$('.application-form').submit(function(e) {
e.preventDefault();
$.cookie('agreed_to_terms', '1', { path: '/', expires: 999999 });
});
});
Run Code Online (Sandbox Code Playgroud)
你不需要那里的if条件,因为它似乎正在测试表单是否已经提交,并且你已经知道它已经存在,因为你在表单的提交事件处理程序中.
如果条件不需要检查提交返回值.
$().ready(function()
{
$('.application-form').submit(function(e)
{
e.preventDefault();
$.cookie('agreed_to_terms', '1', { path: '/', expires: 999999 });
});
});
Run Code Online (Sandbox Code Playgroud)