所以我设法破解了这一点,当我输入有效的电子邮件时,它将通过ajax发送并将结果保存到购物车会话。但是,我想确保我覆盖所有天使并且不确定如何。到目前为止这是JS:
function validEmail(v) {
var r = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
return (v.match(r) == null) ? false : true;
}
$('#onestepcheckout .ty-billing-email input').blur(function() {
var email = $(this).val();
if (validEmail(email)) {
//alert('valid email');
$.ceAjax('request', fn_url('ac.email' ), {
method: 'post',
data: {
'email': email
},
caching: true
});
}
});
我希望覆盖用户标签,点击页面外部,点击浏览器按钮,关闭窗口,关闭标签等等。因此,它始终确保保存值。有什么想法吗?
另外我只是注意到,如果我点击它可以节省价值(一切都很好),但如果我再改变它就不会。即使在之前的ajax请求之后,也需要每次都做。