javascript - replace тегов

Aknichy

Новичок
javascript - replace тегов

всем доброго.
не могу понять почему не заменяются теги. подозреваю, что "<" и кавычки - являются спец символами. как обойти это не знаю. как в PHP "\" не срабатыеат.
суть:
есть табличка с цеветными ячейками и checkbox'ами. клиет выбирает цвета - внизу (без перезагрузки страницы!) выводится все, что выбрал. если галочку снимает - цвет должен убираться, а этого не происходит.

PHP:
<script type="text/javascript">
function cnt_color_textil(name,color){
	str=document.getElementById("sel_color").innerHTML; 
	str2='<div style="background:#'+color+'; width:204px; height:12px; display:blok;"></div>';
	if ( document.getElementById(name).checked ){
	  document.getElementById("sel_color").innerHTML=str+str2;
	 }
	else {
	    document.getElementById("sel_color").innerHTML=str.replace(str2,'');
	 }

}
</script>

    <form action="" name="send" method=post>

			<input type='checkbox' id='cl_fb1' name='cl_fb1' onClick="cnt_color_textil('cl_fb1','000000');">
			<input type='checkbox' id='cl_fb2' name='cl_fb2' onClick="cnt_color_textil('cl_fb2','0000dd');">


            <table cellpadding="1" cellspacing="1"  border=0 width=100%>
            <tr><td height='20'>сейчас выбран(ы): </td></tr>
            <tr><td id='sel_color' ></td></tr>
            </table>
                 
	</form>
 

pilot911

Новичок
Re: javascript - replace тегов

внутрь дива надо вставить хоть что-то, например, &nbsp

потом, что за новое свойство display:blok; - исправь на block, вместо background юзай background-color

используй jquery


PHP:
<script type="text/javascript">
function cnt_color_textil(name,color){

	str2='<div class="spec-class"    style="background-color:#'+color+'; width:204px; height:12px; display:block;">&nbsp;</div>';
 	
	if ($("#"+name).attr("checked")){
		$("#sel_color").html(str2);
	}
	else {
		$("#sel_color").find("div.spec-class").remove();
	}
	
}
</script> 
 
    <form action="" name="send" method=post>

            <input type='checkbox' id='cl_fb1' name='cl_fb1' onClick="cnt_color_textil('cl_fb1','000000');">
            <input type='checkbox' id='cl_fb2' name='cl_fb2' onClick="cnt_color_textil('cl_fb2','0000dd');">


            <table cellpadding="1" cellspacing="1"  border=0 width=100%>
            <tr><td height='20'>сейчас выбран(ы): </td></tr>
            <tr><td id='sel_color' ></td></tr>
            </table>
                 
    </form>


хотя на мой взгляд, проще сразу внутрь <td id='sel_color' > записать див и менять у него лишь свойство display
 
Сверху