Jquery语法错误,函数体后面缺少}
Jquery Syntax error missing } after function body
我已经尝试过这段代码以及其他类型的代码,但我不明白如何正确获得它
jQuery(document).ready(function($){
//jQuery.noConflict();
var jc_message = ['Loading...',
'Please enter your name.',
'Please enter your email address.',
'Please enter a valid email address.',
'Please enter your comment.',
'Your comment has been added.',
'JC error!'];
var jc_url = $("#jc_url").val();
var jc_url_close = $("#jc_url_close").val();
var form, err, reply;
function jc_scripts() {
$('#commentform').after('<div class="jc-modal"><img src="'+jc_url_close+'" id="loading" alt="close" /><div id="error" class= "error"></div></div>');
$('#submit').after('<img src="'+jc_url+'" id="loading" alt="'+jc_message[0]+'" />');
$('#loading').hide();
form = $('#commentform');
err = $('#error');
reply = false;
}
jc_scripts();
$("#comments,#reviews").on("click",".comment-reply-link",function(){
reply = $(this).parents('.depth-1').attr('id');
err.empty();
});
$("#comments,#reviews").on("click","#cancel-comment-reply-link",function(){
reply = false;
});
$("#comments,#reviews").on("submit","#commentform",function(evt){
err.empty();
if(form.find('#author')[0]) {
if(form.find('#author').val() == '') {
err.html('<span class="error">'+jc_message[1]+'</span>');
$(".jc-modal").fadeIn();
setTimeout(function() {$(".jc-modal").fadeOut();}, 3000);
return false;
}
if(form.find('#email').val() == '') {
err.html('<span class="error">'+jc_message[2]+'</span>');
$(".jc-modal").fadeIn();
setTimeout(function() {$(".jc-modal").fadeOut();}, 3000);
return false;
}
var filter = /^([a-zA-Z0-9_'.'-])+'@(([a-zA-Z0-9'-])+'.)+([a-zA-Z0-9]{2,4})+$/;
if(!filter.test(form.find('#email').val())) {
err.html('<span class="error">'+jc_message[3]+'</span>');
$(".jc-modal").fadeIn();
setTimeout(function() {$(".jc-modal").fadeOut();}, 3000);
if (evt.preventDefault) {evt.preventDefault();}
return false;
}
}
if(form.find('#comment').val() == '') {
err.html('<span class="error">'+jc_message[4]+'</span>');
$(".jc-modal").fadeIn();
setTimeout(function() {$(".jc-modal").fadeOut();}, 3000);
return false;
}
$(this).ajaxSubmit({
beforeSubmit: function() {
$('#loading').show();
$('#submit').attr('disabled','disabled');
}, // end beforeSubmit
error: function(request){
err.empty();
var data = request.responseText.match(/<p>(.*)<'/p>/);
err.html('<span class="error">'+ data[1] +'</span>');
$(".jc-modal").fadeIn();
setTimeout(function() {$(".jc-modal").fadeOut();}, 3000);
$('#loading').hide();
$('#submit').removeAttr("disabled");
return false;
}, // end error()
success: function(data) {
try {
// if the comments is a reply, replace the parent comment's div with it
// if not, append the new comment at the bottom
var response = $("<ol>").html(data);
if(reply != false) {
$('#'+reply).replaceWith(response.find('#'+reply));
$('.commentlist').after(response.find('#respond'));
jc_scripts();
} else {
var ctnComment= $("#comments");
var elBody= $("<div>"+data.replace(/['n'r]/g, "")+"</div>");
//$('#comments').load(''+data+' #comments ol li');
//elItems = $(''+data+' #comments ol li');
elItems = elBody.find("#comments ol li");
title = elBody.find('#comments > h2').html();
//alert(elItems);
ctnComment.find("#comments-title").remove();
ctnComment.find("ol").remove();
var ctnListComments= $("<ol />",{"class":"commentlist comment-list"});
ctnListComments.append(elItems);
ctnComment.prepend(ctnListComments);
ctnComment.prepend('<h2 id="comments-title">'+title+'</h2>');
}
form.find('#comment').val('');
err.html('<span class="success">'+jc_message[5]+'</span>');
$('#submit').removeAttr("disabled");
$('#loading').hide();
$(".jc-modal").fadeIn();
setTimeout(function() {$(".jc-modal").fadeOut();}, 3000);
$("#recaptcha_reload_btn img").click();
$("p.stars span a").removeClass('active');
} catch (e) {
$('#loading').hide();
$('#submit').removeAttr("disabled");
alert(jc_message[6]+''n'n'+e);
$("#recaptcha_reload_btn img").click();
}
}
});
return false;
});
$("#comments,#reviews").on("click",".jc-modal > img",function(){
$(".jc-modal").hide();
});
});
是否有任何遗漏的标签关闭或我试图关闭jQuery与另一个});
,但我不能让它工作总是相同的对话框与消息
语法错误缺少
}
函数体后
编辑:这是我在wordpress comments
中尝试的函数add_action('wp_head','addImages');
add_action('admin_enqueue_scripts','addImages');
function addImages(){ ?>
<?php bloginfo('template_directory'); ?>
<input id = "jc_url" type="hidden" value="<?php bloginfo('template_directory'); ?>/css/images/loading.gif">
<input id = "jc_url_close" type="hidden" value="<?php bloginfo('template_directory'); ?>/css/images/close.png">
<?php }
您在if
子句中有一些语法错误,我解决如下:
if(form.find('#comment').val() == ' ') {
err.html('<span class="error">'+jc_message[4]+'</span>');
$(".jc-modal").fadeIn();
setTimeout(function() {$(".jc-modal").fadeOut();}, 3000);
return false;
}
您的完整工作:jsFiddle没有任何语法错误
相关文章:
- 使用JS函数来使用另一个函数的语法?node.js
- 如何定义const函数javascript(语法糖)
- 如何在 JavaScript 中获取函数体文本
- JS中奇怪的函数定义语法
- Javascript重新定义和覆盖现有的函数体
- 为什么可以'我们在函数体中为函数对象添加属性,就像在javascript中为对象文字添加属性一样
- 在运行时将代码插入函数体
- JavaScript 函数参数 - 语法错误
- “=>"在javascript中定义函数的语法及其意义
- 从函数体参数中获取值
- 为什么错误显示为函数体之前缺少{
- 如何在jquery中使用函数体onload
- 从 java 脚本调用参数化 ms-access 函数的语法是什么?
- Javascript函数调用语法不清楚
- JS:正则表达式,用于查找函数体中的所有函数调用
- JavaScript 匿名函数有效语法,防止全局范围污染
- 有人可以在 JavaScript 中解释这种函数包装语法吗?
- Jquery语法错误,函数体后面缺少}
- 语法错误:jquery函数体后缺少}
- Javascript 模板不运行:语法错误:函数体之后的意外垃圾,以“}”开头