Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 函数将旧数据发送到服务器_Javascript_Jquery - Fatal编程技术网

Javascript 函数将旧数据发送到服务器

Javascript 函数将旧数据发送到服务器,javascript,jquery,Javascript,Jquery,我有一个颜色选择器,人们可以在其中选择一种颜色,所以每当用户在一种颜色之上时,它都会将颜色十六进制代码发送到服务器。 现在我想我有了一个解决方案,但在客户端它可以工作,因为我使用delete,但每次我都没有定义(我真的不喜欢) 因此,我希望功能像这样工作,用户可以选择一种颜色,关闭它必须发送最新的颜色后,点击关闭按钮服务器。 现在它向服务器发送所有拾取的颜色代码,我如何避免这种情况 $("#color").farbtastic(function(a) { color =

我有一个颜色选择器,人们可以在其中选择一种颜色,所以每当用户在一种颜色之上时,它都会将颜色十六进制代码发送到服务器。 现在我想我有了一个解决方案,但在客户端它可以工作,因为我使用
delete
,但每次我都没有定义(我真的不喜欢)

因此,我希望功能像这样工作,用户可以选择一种颜色,关闭它必须发送最新的颜色后,点击关闭按钮服务器。 现在它向服务器发送所有拾取的颜色代码,我如何避免这种情况

    $("#color").farbtastic(function(a) {
        color = a;
        $(".ui-dialog-titlebar-close").click(function() {
            socket.emit('send color',{type: 'color', value: a}, function(data){
                if(data){
                    if(data.result=='success'){ 
                        console.log(a);
                        delete color;
                    }
                }
            });
        }); 
    });

每次用户选择颜色时都会调用添加到FarbStatic的回调,当您在该回调中绑定事件处理程序时,每次有人选择颜色时都会添加一个新的click事件处理程序,这似乎是个坏主意

分离事件处理程序

$("#color").farbtastic(function(a) {
    $("#color").data('fcolor', a);
});

$(".ui-dialog-titlebar-close").click(function() {
    var color = $("#color").data('fcolor');

    socket.emit('send color',{type: 'color', value: color}, function(data){
        if(data){
            if(data.result=='success'){ 
                console.log(color);
            }
        }
    });
});

当我这样做时,它不会触发
click()函数中的函数。模态来自何处,您是否在弹出对话框的某个地方打开了它?是的,de fiddle URL中的代码有效还是只有我?我没有得到任何弹出窗口或控制台小提琴为我工作,但再一次,Farbtastic没有创建对话框,你点击的模态对话框来自哪里?小提琴中的代码为我工作点击功能有一些奇怪的反应。非常感谢。