webForumDet fria alternativet

Villkor för submit

5 svar · 820 visningar · startad av devotion

devotionMedlem sedan jan. 20013 582 inlägg
#1

:birp

Dålig rubrik, men jag har får koncentrera mig på att överleva en dag som denna...

Jag har följande kod (Tack Peter S :bire )

<script type="text/javascript">

function submitForm(frm, url, msg){
  frm.action = url;

  var cb = frm.elements["checkTask"],
      i  = cb.length;

  if (!i && cb.checked){
    if (confirm(msg)){ frm.submit() }
    return;
  } else {
    while (i--){
      if (cb[i].checked){
	if (confirm(msg)){ frm.submit() }
	return;
      }
    }
  }

  alert("Inget uppdrag är markerat!");
}
</script>

...

<input type="checkbox" name="checkTask" value="<% =server.htmlencode(objRS("Id")) %>" />

...

<input type="button" class="submitButton" value="Sammanfoga" onclick="submitForm(this.form, 'joinTask.asp', 'Uppdraget kommer att sammanfogas, vill du fortsätta?')">

<input type="button" value="Radera" class="submitButton" onclick="submitForm(this.form, 'deleteTask.asp', 'Är du säker på att du vill radera uppdragen?')">

<input type="button" value="Klona" class="submitButton" onclick="submitForm(this.form, 'cloneTask.asp', 'Uppdragen kommer att klonas. Vill du fortsätta?')">

Den fungerar så att det går inte att submitta om inte någon checkbox är ifylld för aktuell post.

Samtidigt så måste man bekräfta att man verkligen vill utföra åtgärden

Nu skulle jag vilja utveckla det hela lite... ;)

När det gäller "Radera uppdrag" så behävs ingen förändring.

Men...

Jag skulle vilja ha en spärr som gör att man inte kan gå vidare och klona ett uppdrag om fler än ett uppdrag är valt, dvs det får bara vara ett uppdrag markerat.

samt

En spärr som gör att man inte kan sammanfoga ett uppdrag om endast ett uppdrag är valt dvs det måste vara minst 2 uppdrag markerade...

Tack på förhand!

Mvh
Henrik

Peter SMedlem sedan dec. 20025 483 inlägg
#2

God fortsättning! :)

Har deadlinen skjutits upp eller är den farligt nära?

Testa:

<script>
function submitForm(inp, url, msg){
  inp.form.action = url;

  var cb = inp.form.elements["checkTask"],
      i  = cb.length,
      ch = 0;

  if (!i && cb.checked){
    if (confirm(msg)){ frm.submit() }
    return;
  } else {
    while (i--){ cb[i].checked && ++ch }
  }

  if (!ch){
    alert("Inget uppdrag är markerat!");
    return;
  }

  if (inp.value == "Klona" && ch != 1){
    alert("Vid kloning får endast ett uppdrag vara markerat!");
    return;
  }

  if (inp.value == "Sammanfoga" && ch != 2){
    alert("Vid sammanfogning måste två uppdrag vara markerade!");
    return;
  }

  confirm(msg) && inp.form.submit();
}
</script>
<form>
  <input type="checkbox" name="checkTask">
  <input type="checkbox" name="checkTask">
  <input type="button" value="Radera" onclick="submitForm(this, 'dev.html', 'Är du säker på att du vill radera uppdragen?')">
  <input type="button" value="Klona" onclick="submitForm(this, 'dev.html', 'Uppdraget kommer att klonas, vill du fortsätta?')">
  <input type="button" value="Sammanfoga" onclick="submitForm(this, 'dev.html', 'Uppdragen kommer att sammanfogas. Vill du fortsätta?')">
</form>
devotionMedlem sedan jan. 20013 582 inlägg
#3

Hehe!

God fortsättning

Har deadlinen skjutits upp eller är den farligt nära?

Man kan nog säga att den är farligt nära

Testar kode...
återkommer...

Mvh
Henrik

devotionMedlem sedan jan. 20013 582 inlägg
#4

Hej :)

Detta blir nog ingen maratontråd....

Det funkar fint, men jag skulle vilja att villkoret för att sammanfoga är:
2 eller fler uppdrag måste vara ikryssade

Testade lite jag fick inte ihop det....

Mvh
Henrik :)

Peter SMedlem sedan dec. 20025 483 inlägg
#5
  if (inp.value == "Sammanfoga" && ch < 2){
    alert("Vid sammanfogning måste två uppdrag vara markerade!");
    return;
  }

:)

devotionMedlem sedan jan. 20013 582 inlägg
#6

Ahhh!

Great!

Tackar

Förklarar härmed tråden avslutad... hehe endast 6 inlägg!!

Mvh
Henrik

135 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)