在JavaScript中获取多个元素

时间:2011-01-26 07:02:54

标签: javascript javascript-events

当用户从下拉菜单中选择任何一个选项时,Web应用程序中有一个下拉菜单,我必须生成一个文本框和复选框。我在下拉菜单中实现了onSelect,我调用了一个实际调用添加文本的函数的函数,但我需要生成复选框和文本框。

我试图再调用一个功能,但这不起作用我也尝试使用“&&”即使这是行不通的,我试图在函数内部调用一个函数,即使它不起作用。我该怎么做?

这是代码

<SCRIPT language="javascript">
function add(type) {

    //Create an input type dynamically.
    var element = document.createElement("input");


    //Assign different attributes to the element.
    element.setAttribute("type", type);
    element.setAttribute("value", type);
    element.setAttribute("name", type);

    var foo = document.getElementById("fooBar");

    //Append the element in page (in span).
    foo.appendChild(element);
    //var element=document.createElement("checkbox");
    //var foo=document.getElementById("foobar");
    //foo.appendChild(element);
    var a=1;

    if(a==1){
        function add2(type) {

            //Create an input type dynamically.
        var chkbox = document.createElement("checkbox");
            //Assign different attributes to the element.

        chkbox.setAttribute("type", type);
            chkbox.setAttribute("value", type);
            chkbox.setAttribute("name", type);

            //var foo = document.getElementById("fooBar");
        //Append the element in page (in span).
            appendChild(chkbox);
        }
    }
}
</SCRIPT>

1 个答案:

答案 0 :(得分:2)

最好的方法是从下拉菜单中选择select参数调用函数,但是你必须在下拉菜单中为每个链接生成参数

function fuc1( arg1 , arg2, ... )
{
            //you can use these agruments to genetate attrs of input and other things
    var input = $("<input></input>").attr({'type': 'text', 'id': someid, 'class': 'someclass' , ... }).val(someval);
    var chbox = $("<input></input>").attr({'type': 'checkbox', 'id': someid, 'class': 'someclass' , ... });

    $(input).appendTo(something);
    $(chbox).appendTo(something);
}

它通常以这种方式工作。如果您提交代码,那么它可能会帮助您

更新::

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script>
function fuc1()
{
        //you can use these agruments to genetate attrs of input and other things
    var container = $("<div></div>").appendTo($('#content'));
    var input = $("<input></input>").attr({'type': 'text'});
    var chbox = $("<input></input>").attr({'type': 'checkbox'});

    $(input).appendTo(container);
    $(chbox).appendTo(container);
}

</script>

<div id="content"></div>
<a href="javascript: fuc1()">add</a>