Method post mit toggle
mini2440
- javascript
0 mini2440
hi
ich benutzte das framework iui um eine seite für ein iphone zu machen.
klappt alles soweit sogut biss auf die toggle problem.
bin da nicht so java/html fit und brauche mal hilfe.
ich möchte 2 toggle werte erfassen und die werte bei submit ein php script übergeben.
laut issue list wird die togglewerte nicht gespeichert für post.
dort is ein workaround beschrieben, nur kann ich newbie nicht viel mit anfangen.
hier was man machen soll
Toggle data is not added to the post body when for data is sent.
This can be solved by adding the following
to the encodeForm method (the encodeToggles function and call):
function encodeForm(form)
{
function encode(inputs)
{
for (var i = 0; i < inputs.length; ++i)
{
if (inputs[i].name)
args.push(inputs[i].name + "=" + escape(inputs[i].value));
}
}
function encodeToggles(toggles) {
var i,t,n,state;
for (i=0; (t=toggles[i]); i++) {
n = t.getAttribute('name');
if (n) {
state = String(!!(t.getAttribute('toggled')==='true'));
args.push(n + "=" + state);
}
}
}
var args = [];
encode(form.getElementsByTagName("input"));
encode(form.getElementsByTagName("textarea"));
encode(form.getElementsByTagName("select"));
encodeToggles(form.getElementsByClassName("toggle"));
return args;
}
Note this requires a "name" on the toogle div:
<div class="toggle" name="foo">
It will submit the string "true" or "false"
hier jetzt meine part wo ich die togglewerte ändern kann.
<div id="light" title="Lights" class="panel">
<h2>Status</h2>
<fieldset>
<div class="row">
<label>Room1</label>
<div class="toggle" name="room1" onclick=""><span class="thumb"></span><span class="toggleOn">ON</span><span class="toggleOff">OFF</span></div>
</div>
<div class="row">
<label>Room2</label>
<div class="toggle" name="room2" onclick="" toggled="true"><span class="thumb"></span><span class="toggleOn">ON</span><span class="toggleOff">OFF</span></div>
</div>
</fieldset>
<form action="save.php" method="post" name="test">
<input type="submit" value="Submit">
</form>
</div>
wie muss ich jetzt diese javascript howto anwenden um die toggle werte an denn save.php zu übergeben bei submit.
ich suche jetzt schon tagelang nach ein lösung, für ein profi sicher was von max 5min oder nur 1-4 zeilen,
für ein newbie ein großen problem.
mit ein
function saveStatus() {
document.test.action="save.php?room1="+document.getElementsByName("room1")[0].getAttribute("toggled");
}
onclick="saveStatus();"
kann ich ein toggle wert übergeben, aber wenn ich beide ändern,
wie mache ich das denn.
die 1 zeiler hier oben hat mich auch stunden gekostet. :-(
danke für ein hinweis!
gruß
peter
nabend,
schade keine tipps :-(
werde ich wohl weiter experimentieren mussen.
gruß
peter