【发布时间】:2011-12-28 00:51:31
【问题描述】:
我必须在我的网站上使用<base href="http://www.mysite.com/it/"/>,因为我使用的是 apache mod_rewrite,如果我不放置基本 href 标记会导致问题。
但是这个 jQuery 函数现在出现了问题:
$(document).ready(function(){
$("#submit_newsletter").click(function(){
var hasError = false;
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
var nameVal = $("#name").val();
if(nameVal == '') {
$("#name").addClass("highlightError").delay(4000).queue(function(){
$(this).removeClass("highlightError");
$(this).dequeue();
});
hasError = true;
}
var subnameVal = $("#subname").val();
if(subnameVal == '') {
$("#subname").addClass("highlightError").delay(4000).queue(function(){
$(this).removeClass("highlightError");
$(this).dequeue();
});
hasError = true;
}
var emailVal = $("#email").val();
if(emailVal == '') {
$("#email").addClass("highlightError").delay(4000).queue(function(){
$(this).removeClass("highlightError");
$(this).dequeue();
});
hasError = true;
} else if(!emailReg.test(emailVal)) {
$("#email").addClass("highlightError").delay(4000).queue(function(){
$(this).removeClass("highlightError");
$(this).dequeue();
});
hasError = true;
}
var messageVal = $("#message").val();
if(messageVal == '') {
$("#message").addClass("highlightError").delay(4000).queue(function(){
$(this).removeClass("highlightError");
$(this).dequeue();
});
hasError = true;
}
if(hasError == false) {
$.post("mail.php",
{ name: nameVal, subname: subnameVal, email: emailVal, message: messageVal },
function(data){
$("#results").text("Messaggio Inviato.").delay(4000).queue(function(){
$("#results").text("")
$(this).dequeue();
});
$('#newsletter')[0].reset();
}
);
}
return false;
});
});
当我删除基本 href 标记时它工作得很好,当我使用它时(我重复一遍,我必须使用它)上面的 jQuery 函数停止工作。 它没有给出任何错误,只是没有将任何值传递给 mail.php 文件,也没有返回任何结果。
如何使用基本 href 标签解决这个 jQuery 问题?
谢谢。
【问题讨论】: