为jquery对话框创建按钮数组

时间:2013-01-17 23:00:41

标签: javascript jquery jquery-ui jquery-ui-dialog

是否可以创建一个按钮数组,然后将其附加到jQuery对话框?

这些方面的东西。原谅我在for循环中的错误代码,只是不知道如何做到这一点。

function setAutoDialog()
{
    var testArray = ["T1", "T2"];
    $('#autoDialog').dialog({
        autoOpen: false,
        width: 'auto',
    });
    var buttons = {};
    for(var i=0; i<testArray.length; i++){
        buttons += [testArray[ix] : Test()]
    }
    $('#autoDialog').dialog('option', 'buttons', buttons);
}

function Test()
{
    alert("worked");
}

1 个答案:

答案 0 :(得分:2)

这样的事情应该有效:

function setAutoDialog(){
    var testArray = ["T1", "T2"];

    var testFunction = function () {
        alert("worked");
    }

    var myButtons = {};

    for(var i = 0; i < testArray.length; i++){
        myButtons[testArray[i]] = testFunction;
    }

    $('#autoDialog').dialog({
        autoOpen: false,
        width: 'auto',
        buttons : myButtons
    }); 
}

“比如点击而不是警告(工作)我想得到警报(buttonClicked.val())?”它会是这样的:

function setAutoDialog(){
    var testArray = ["T1", "T2"];

    var myButtons = {};

    for(var i = 0; i < testArray.length; i++){
        var testFunction = function () {
            alert(testArray[i]);
        }

        myButtons[testArray[i]] = testFunction;
    }

    $('#autoDialog').dialog({
        autoOpen: false,
        width: 'auto',
        buttons : myButtons
    }); 
}