2012-04-04 179 views
0

我有一個包含10個項目(格式化列表)的頁面。在此頁面中,我需要爲每個項目添加複選框,並將該項目作爲值添加到每個複選框。當用戶點擊複選框時,應該將選定的值傳遞給新頁面。任何人都可以幫助我如何在java腳本中爲innerHTML添加複選框。在javascript中添加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"); 
    } 
+0

把一些代碼示例。也許jsFiddle會有所幫助。 – MatuDuke 2012-04-04 13:36:08

回答

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>')); 
    } 
);​​​​ 
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添加一個提交按鈕。