在javascript中添加innerHTML的复选框

时间:2012-04-04 13:20:04

标签: javascript checkbox innerhtml

我有一个页面,其中包含10个项目(格式化列表)。在这个页面中,我需要为每个项目添加复选框,并将项目作为值添加到每个复选框。当用户单击复选框时所选的值应该传递给一个新的页面。任何人都可以帮我如何在java脚本中添加innerHTML的复选框。

代码:

  var newsletter=document.getElementById("block-system-main");
    var districolumn=getElementsByClassName('view-id-_create_a_news_letter_',newsletter,'div'); 
  if(districolumn!=null)
 {
  var newsletterall=newsletter.getElementsByTagName('li');
 alert(newsletterall[0].innerHTML);
 var all=newsletter.innerHTML;
newsletter.innerHTML="<input type='button' onclick='changeText()' value='Change Text'/>";
}
    function changeText()
    {
       alert("dfgsdg");
    }

2 个答案:

答案 0 :(得分:1)

我并不完全理解您的代码的每个部分正在做什么,但我会尝试给出一般答案:

在HTML中,执行以下操作:

<form id="myForm" action="nextPage.com">
    <div id="Boxes"></div>
</form>

将上述名称更改为您希望复选框写入的位置。

你的功能:

function changeText()
{
    for(var i=0 ; i < newsletterall.length ; i++)
    {
        var inner = document.getElementById("Boxes").innerHTML;
        var newBox = ('<input type="checkbox" name="item[]" value="' + newsletter[i] + '>' + newsletterall[i]);
        document.getElementById("Boxes").innerHTML = inner + newBox;
    }
document.getElementById("myForm").submit();
}

最后一行代码自动提交复选框。如果您不想这样,请删除该行,然后向表单myForm添加提交按钮。

答案 1 :(得分:0)

$('ul​​​#list li').each(
    function() {
        var me = $(this),
            val = me.html(),
            ckb = $('<input type="checkbox" />');

        ckb.click(function() {
            var where=val;
            window.location.href='http://google.com/?'+where; 
        });

        me.html('');
        me.append(ckb).append($('<span>'+val+'</span>'));
    }
);​​​​