这是我的代码:
jQuery(document).ready(function () {
jQuery(".jlk").live("click", function (e) {
e.preventDefault();
var task = jQuery(this).attr("data-task");
var post_id = jQuery(this).attr("data-post_id");
var nonce = jQuery(this).attr("data-nonce");
var currentClass = $(this).attr('class');
jQuery(".status-" + post_id).html(" ").addClass("loading-img").show();
jQuery.ajax({
type: "post",
dataType: "json",
url: wtilp.ajax_url,
data: { action: "wti_like_post_process_vote", task: task, post_id: post_id, nonce: nonce },
success: function (response) {
jQuery(".lc-" + post_id).html(response.like);
jQuery(".unlc-" + post_id).html(response.unlike);
jQuery(".status-" + post_id).removeClass("loading-img").empty().html(response.msg);
}
});
});
// Other users tooltip
jQuery("span.wti-others-like").live("mouseover", function () {
jQuery(this).children("span").show();
});
jQuery("span.wti-others-like").live("mouseout", function () {
jQuery(this).children("span").hide();
});
});
我正在尝试添加这样的条件语句:
if (jQuery(".lc-" + post_id).html(response.like)) {
$(".action-unlike-" + post_id + " img").removeClass('opacity-none'); $(".action-like-" + post_id + " img").addClass('opacity-none'); alert('positive');
}
else if (jQuery(".unlc-" + post_id).html(response.unlike)) { $(".action-like-" + post_id + " img").removeClass('opacity-none'); $(".action-unlike-" + post_id + " img").addClass('opacity-none'); alert('negative'); }
但它总是提醒'积极',就像不读我的条件一样。
我怎样才能做到这一点?
if(response.like =='true'){do this} else if(response.unlike =='true'){do this}?
答案 0 :(得分:1)
jQuery HTML方法总是返回true,因为它是一种在传入值时设置HTML的方法。
请参阅:http://api.jquery.com/html/
如果您的HTML是输入字符串,则需要查找“Val”方法。
请参阅:http://api.jquery.com/val/
如果您真的想要检查HTML,则需要检查传入NO值的.html()。然后对该HTML执行字符串或其他比较。
答案 1 :(得分:0)
H i,
if语句是一个声明(它是设置html,而不是获取HTML和检查)
if (jQuery(".lc-" + post_id).html(response.like)) { ...
你的意思是:
if (jQuery(".lc-" + post_id).html()===response.like) { ...
答案 2 :(得分:0)
您应该使用$(".lc-" + post_id).html()
检查HTML response.like
之类的HTML值,而不是在其中设置值。您可以使用以下代码替换代码:
if ($(".lc-" + post_id).html() == response.like) {
$(".action-unlike-" + post_id + " img").removeClass('opacity-none');
$(".action-like-" + post_id + " img").addClass('opacity-none');
alert('positive');
} else if ($(".unlc-" + post_id).html() == response.unlike) {
$(".action-like-" + post_id + " img").removeClass('opacity-none');
$(".action-unlike-" + post_id + " img").addClass('opacity-none');
alert('negative');
}
祝你好运!