gpt4 book ai didi

javascript - 我的功能不起作用吗?

转载 作者:行者123 更新时间:2023-11-28 21:15:43 25 4
gpt4 key购买 nike

我想在点击链接后显示带有两个选项okcancel的警告框,如果用户点击按钮ok返回它的功能是true 如果点击按钮cancel返回它的函数是false,问题是点击链接后总是返回true。如何解决?

示例: http://jsfiddle.net/MaGyp/

function myalert() {
var result = true;
var $alertDiv = $('<div class="alert">Do you want to delete this item?<button class="ok">ok</button><button class="cancel">cancel</button></div>');
$('body').append($alertDiv);
$('.ok').click(function () {
$('.alert').fadeOut(100);
$('#appriseOverlay').css('display', 'none');
result = true;
});
$('.cancel').click(function () {
$('.alert').fadeOut(100);
$('#appriseOverlay').css('display', 'none');
result = false;
});
$alertDiv.fadeIn(100);
$('#appriseOverlay').css('display', 'block');
return result;
};

$('.iu').click(function () {
alert(myalert());
if (myalert() == true) {
alert('ok')
} else {
alert('no')
}
});

更新:

...
$('.iu').click(myalert)
function callback(result) {
//
if(result){
alert(result);
$('.image_upbg').each(function(){$(this).removeClass().addClass(unique())});
var get_class = '.'+$(this).closest('div').attr('class');
var get_val = $(this).closest('a').find('input').attr('value');
//alert(get_val);
var val = 'val_upimg1=' + get_val;
$(get_class).fadeOut('slow');
$.ajax({
type: "POST",
dataType: 'json',
url: 'delete_upimg',
data: val,
cache: false,
success: function (data) {
$(get_class).fadeOut('slow');
},
"error": function (x, y, z) {
// callback to run if an error occurs
alert("An error has occured:\n" + x + "\n" + y + "\n" + z);
}
});
}else{
alert('no')
}
}

最佳答案

如果您想保持这样的结构,您可以在用户响应后使用回调。

http://jsfiddle.net/MaGyp/2/

function myalert() {
...do stuff here
$('.ok').click(function () {
callback(true); // callback when user clicks ok
});
$('.cancel').click(function () {
callback(false); // callback when user clicks cancel
});
}

$('.iu').click(myalert);

function callback(result) {
alert(result);
}

按照 Ben 的建议,您可以通过将回调函数作为第一个函数的参数来改进这一点,以消除紧密耦合。

关于javascript - 我的功能不起作用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7684196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com