if语句中的jQuery UI对话框按钮

jQuery UI Dialog buttons within an if statement

本文关键字:UI 对话框 按钮 jQuery 语句 if      更新时间:2024-01-01

我有以下功能,它会弹出一个可以在中购买的鱼菜单

.dialog({
    title: "Fish Store",
    resizable: true,
    draggable: true,
    modal: true,
    buttons: {
        "Beard Fish($30)": function() {
            if (cash >= 30)
            {
                fish1 =1;
                fish1Swim1();
                cash -= 30;
                setNav();
                $( this ).dialog( "close" );
            }
            else
            {
                notEnoughCash();
            }
        },
        "Clown Fish($50)": function() {
            if (cash >= 50) 
            {
                fish2 = 1;
                fish2Swim1();
                cash -= 50;
                setNav();
                $( this ).dialog( "close" );
            }
            else 
            {
                notEnoughCash(); 
            }
        },
        "Neon Fish($75)": function() {
            if (cash >= 75) 
            {
                fish3 = 1;
                fish3Swim1();
                cash -= 75;
                setNav();
                $( this ).dialog( "close" );
            }
            else
            { 
                notEnoughCash(); 
            }
        }
    }
});

我想编辑这个函数,这样按钮就可以根据if变量(fish1,fish2,&fish3)打开和关闭。

所以我试着做出以下改变。。。

buttons: { 
    if(fish1=0)
    {
        "Beard Fish($30)": function() {
            if (cash >= 30) 
            {
                fish1 =1;
                fish1Swim1();
                cash -= 30;
                setNav();
                $( this ).dialog( "close" );
            }
            else 
            { 
                notEnoughCash(); 
            }
        },
   }

但我的文本编辑说语法无效,我该如何使其工作?

我认为好的方法是:

  1. 创建不带按钮的对话框
  2. 使用JQueryUI setter根据您的条件添加您想要的按钮

$( ".selector" ).dialog( "option", "buttons", { "Ok": function() { $(this).dialog("close"); } } );

第3步:显示对话框