[英]Make classes work with jquery after updated by jquery
I am currently working on a project, where I want to make a click on an object change a class and then afterwards making the next click depend on the same jquery. 我目前正在研究一个项目,我想在该对象上单击以更改类,然后再使下一次单击依赖于同一jquery。
I can only get it to work the first time - afterwards it won't work. 我只能第一次使用它-之后它将无法使用。 My source is as follows:
我的资料如下:
$(document).ready(function(){
$("a.activate").click(function(){
var elmid = $(this).attr('id');
$.ajax({
type: "POST",
dataType: "json",
url: "/advertisement/activate", // URL of the Perl script
data: {adID: $(this).prev("input.ad_ID").val()},
success: function(data){
if (data.error) {
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("text-danger");
$("form#createForm input#createForm_submit").removeAttr('disabled');
}
else
{
var src = $("a#" + elmid + " img").attr("src").replace("activate-16x16.png", "deactivate-16x16.png");
$("a#" + elmid + " img").attr("src", src);
$("a#" + elmid).removeClass('activate').addClass('deactivate');
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("success");
}
}
});
});
$("a.deactivate").click(function(){
var elmid = $(this).attr('id');
$.ajax({
type: "POST",
dataType: "json",
url: "/advertisement/deactivate", // URL of the Perl script
data: {adID: $(this).prev("input.ad_ID").val()},
success: function(data){
if (data.error) {
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("text-danger");
$("form#createForm input#createForm_submit").removeAttr('disabled');
}
else
{
var src = $("a#" + elmid + " img").attr("src").replace("deactivate-16x16.png", "activate-16x16.png");
$("a#" + elmid + " img").attr("src", src);
$("a#" + elmid).removeClass('deactivate').addClass('activate');
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("success");
}
}
});
});
});
$(document).ready(function(){
$("a.activate").on( 'click', function(){
var elmid = $(this).attr('id');
$.ajax({
type: "POST",
dataType: "json",
url: "/advertisement/activate", // URL of the Perl script
data: {adID: $(this).prev("input.ad_ID").val()},
success: function(data){
if (data.error) { // script returned error
alert("fejl");
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("text-danger");
$("form#createForm input#createForm_submit").removeAttr('disabled');
}
else
{
var src = $("a#" + elmid + " img").attr("src").replace("activate-16x16.png", "deactivate-16x16.png");
$("a#" + elmid + " img").attr("src", src);
$("a#" + elmid).addClass('deactivate').removeClass('activate');
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("success");
}
}
});
});
$("a.deactivate").on ( 'click', function(){
var elmid = $(this).attr('id');
$.ajax({
type: "POST",
dataType: "json",
url: "/advertisement/deactivate", // URL of the Perl script
data: {adID: $(this).prev("input.ad_ID").val()},
success: function(data){
if (data.error) {
alert("fejl");
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("text-danger");
$("form#createForm input#createForm_submit").removeAttr('disabled');
}
else
{
var src = $("a#" + elmid + " img").attr("src").replace("deactivate-16x16.png", "activate-16x16.png");
$("a#" + elmid + " img").attr("src", src);
$("a#" + elmid).addClass('activate').removeClass('deactivate');
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("success");
}
}
});
});
});
Thanks to Jason, Barbara and j08691 I came up with this solution, which should fit, if you're having the same trouble. 多亏了Jason,Barbara和j08691,我想出了这个解决方案,如果您遇到同样的问题,它应该很合适。
Beware that the $(document).ready() part is removed! 注意$(document).ready()部分已删除!
$(document).on( 'click', "a.activate", function(){
var elmid = $(this).attr('id');
$.ajax({
type: "POST",
dataType: "json",
url: "/advertisement/activate", // URL of the Perl script
data: {adID: $(this).prev("input.ad_ID").val()},
success: function(data){
if (data.error) { // script returned error
alert("fejl");
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("text-danger");
$("form#createForm input#createForm_submit").removeAttr('disabled');
}
else
{
var src = $("a#" + elmid + " img").attr("src").replace("activate-16x16.png", "deactivate-16x16.png");
$("a#" + elmid + " img").attr("src", src);
$("a#" + elmid).addClass('deactivate').removeClass('activate');
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("success");
}
}
});
});
$(document).on ( 'click', "a.deactivate", function(){
var elmid = $(this).attr('id');
$.ajax({
type: "POST",
dataType: "json",
url: "/advertisement/deactivate", // URL of the Perl script
data: {adID: $(this).prev("input.ad_ID").val()},
success: function(data){
if (data.error) {
alert("fejl");
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("text-danger");
$("form#createForm input#createForm_submit").removeAttr('disabled');
}
else
{
var src = $("a#" + elmid + " img").attr("src").replace("deactivate-16x16.png", "activate-16x16.png");
$("a#" + elmid + " img").attr("src", src);
$("a#" + elmid).addClass('activate').removeClass('deactivate');
$('div#create_createresult').text(data.msg);
$('div#create_createresult').addClass("success");
}
}
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.