| 

.NET C# Java Javascript Exception

2
Zum einen klone ich Checkboxen. Diese werden auch im "Mobiltelefonstil" formatiert.
Danach versuche ich, Checkboxen im Mobiltelefonstil in einem String zusammenzusetzen
und dann in den Code einzufügen. Diese werden jedoch nicht im "Mobiltelefonstil"
formatiert, sondern als simple Checkboxen ohne Formatierung angezeigt.
Woran kann das liegen und wie kann ich erreichen, dass die per String zusammengesetzten
Checkboxen auch im "Mobiltelefonstil" angezeigt werden?
(Bei den geclonten Checkboxen hatte ich Probleme mit der Eventhandlerverwaltung, deshalb
versuche ich jetzt, statt zu Clonen, meine Checkboxen per String zusammenzubauen und
einzusetzen.)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<title>My Page</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="jquery.mobile-1.1.1.min.css" />
<script src="jquery-1.7.2.min.js"></script>
<script src="jquery.mobile-1.1.1.min.js"></script>
</head>
<body onfocus="readvalues()">
<div id="mypage" data-role="page" data-theme="a">
<script>
$(document).ready(function () {
$('input:checkbox').on('click', doTheWork);
});
function doTheWork(event) {
readvalues();
event.preventDefault();
event.stopPropagation();
$(this).toggle();
$(this).checkboxradio("refresh");
}
</script>
<div data-role="fieldcontain" id="fieldcontainid">
<fieldset data-role="controlgroup" id="fieldsetid">
<div id="sample">
<input id="checkboxsample" class="custom" type="checkbox" data-iconpos="left" name="checkboxsample">
<label id="labelsample" for="checkboxsample">Test</label>
</div>
<div id="existing"></div>
</fieldset>
</div>
<div data-role="fieldcontain" id="fieldcontainid">
<fieldset data-role="controlgroup" id="fieldsetid">
<div id="existing2"></div>
</fieldset>
</div>
<script>
readvalues = function()
{
var existing = document.getElementById('existing');
existing.textContent = '';
for (i=0; i<=3; i++)
{
var clonecheckbox = $("#sample").clone(false);
$("#existing").append(clonecheckbox);
clonecheckbox.attr("id",i.toString());
//clonecheckbox.removeAttr('checked');
//clonecheckbox.click(doTheWork); -> wrong, because I would get ID of DIV instead of ID of input field

$("#"+i.toString()).children().children().eq(0).attr("id","cb"+i.toString());
$("#"+i.toString()).children().children().eq(0).attr("name","cb"+i.toString());

$("#"+i.toString()).children().children().eq(0).click(doTheWork); //bind event handler to input field

$("#"+i.toString()).children().children().eq(1).attr("id","label"+i.toString());
$("#"+i.toString()).children().children().eq(1).attr("for","cb"+i.toString());
}
var meinstring = "";
meinstring += "<div data-role='fieldcontain' id='fieldcontainid2'>";
meinstring += "<fieldset data-role='controlgroup' id='fieldsetid2'>";
for (i=0; i<=3; i++)
{
meinstring += "<input type='checkbox' id='mycb"+i.toString()+"' class='custom' data-iconpos='left' name='mycb"+i.toString()+"'>";
meinstring += "<label id='mylb"+i.toString()+"' for='mycb'"+i.toString()+">Test</label>";
}
meinstring += "</fieldset>";
meinstring += "</div>";

var existing2 = document.getElementById('existing2');
existing2.textContent = '';
$("#existing2").append(meinstring);
}
</script>
</div>
</body>
</html>
News:
16.08.2012
MMAABB 1 1