chechbox check uncheck

Status
Niet open voor verdere reacties.

phobia

Terugkerende gebruiker
Lid geworden
4 sep 2006
Berichten
1.777
Ik hen 2 checkboxen

1 order binnen gekomen
2 order verstuurd

Nu wil ik dat als checkbox 1 en 2 nooit tegelijk checked kunnen zijn (Dus het vinkje hebben)

Dus altijd maar 1 aan of uit.

Hoe moet ik dat aanpakken?

kan iemand mij op weg helpen?
 
Daarvoor moet je eigenlijk radiobuttons gebruiken - die zijn ervoor gemaakt. Maar als je echt checkboxes op deze manier wilt gebruiken zul je met javascript aan de gang moeten. Een voorbeeld:
HTML:
<input type="checkbox" id="binnen_gekomen" name="binnen_gekomen" onclick="if (this.checked!=true) { document.getElementById('verstuurd').checked=true } else { document.getElementById('verstuurd').checked=false }" /> optie een<br />
<input type="checkbox" id="verstuurd" name="verstuurd" onclick="if (this.checked!=true) { document.getElementById('binnen_gekomen').checked=true } else { document.getElementById('binnen_gekomen').checked=false }" /> optie twee
 
Op die manier moet er wel altijd één aagevinkt zijn.

Ik zou het dan ook zo doen:

[JS]
<input type="checkbox" id="binnen_gekomen" name="binnen_gekomen" onclick="if(this.checked==true){document.getElementById('verstuurd').checked=false}" /> optie een<br />
<input type="checkbox" id="verstuurd" name="verstuurd" onclick="if(this.checked==true){document.getElementById('binnen_gekomen').checked=false}" /> optie twee
[/JS]

En je zou natuurlijk ook nog een <select> kunnen gebruiken.
 
Zou het ook niet werken als je beide checkboxen dezelfde name en id geeft en dan een verschillende value (binnen_gekomen en verstuurd), zodat ze werken zoals een "radio".

HTML:
<input type="checkbox" id="inuit" name="inuit" value="binnen_gekomen"> optie 1 <br/>
<input type="checkbox" id="inuit" name="inuit" value="verstuurd"> optie 2
 
Nee, dat werkt niet. Sowieso kom je dan met versturen in de knoei, want dit gaat waarschijnlijk onvoorspelbaar gedrag opleveren in verschillende browsers en je kunt ze nog steeds beide aanklikken.
 
Ok, dank je wel voor de uitleg.
Wist ik niet, al had dat waarschijnlijk wel gemoeten :o
 
Ik zal niet weten waarom dit niet zou werken?

Copy uit een werkend script:

<p>&nbsp;<input type="radio" name="AC" value="Nee" CHECKED> Nee, ik maak het faktuurbedrag na ontvangst van de foto's gewoon over</p>
<p>&nbsp;<input type="radio" name="AC" value="Ja"> Ja, ik wil graag een acceptgiro bij de faktuur</p>

Groetjes,

DIck
 
Ik hen 2 checkboxen

1 order binnen gekomen
2 order verstuurd

Nu wil ik dat als checkbox 1 en 2 nooit tegelijk checked kunnen zijn (Dus het vinkje hebben)

Dus altijd maar 1 aan of uit.

Hoe moet ik dat aanpakken?

kan iemand mij op weg helpen?

Wat jij aangeeft zijn geen checkboxen...
 
De omschrijving van wat hij wil is gewoon een radiobutton

Het lijkt er wel op, maar het is niet helemaal zo. Wat we namelijk niet uit zijn post kunnen opmaken, is of het ook mogelijk moet zijn om niets aan te vinken. Ik ga daar wel van uit.

En aangezien het vrij lastig is om een radio-button weer helemaal uit te zetten (geen van de opties geselecteerd), denk ik dat je dan toch wel checkboxen wilt gebruiken.
 
ik wil met de keuze een dropdown menu aansturen en een query op maken.
Hoe zet ik checkbox 'binnen_gekomen' bij openen van pagina al op true?

DIt word het keuze menu...ben er alleen nog niet uit hoe in de dropdown kan laten vullen met de datum's van datunIn of datumUit.
PHP:
<?
//include('../../check.php');
include ('../functions/connect.php'); //verbinding maken
$query = ("SELECT DISTINCT date_format(datumIn, '%d-%m-%Y') AS datumIn
			FROM tblbriladmin
			WHERE debnr = ".$_SESSION['Klant_id']) ;// Opzoeken orders gegevens
//query is aangemaakt
$sql = mysql_query($query) or die ( mysql_error( ) );
//query is uitgevoerd
?>
<FORM name"zoeken" target="I1" method="POST" action="../loggedin/orders/order_zoekdatum.php"
style="width: 100px">
<input type="checkbox" id="binnen_gekomen" name="binnen_gekomen" onclick="if (this.checked!=true) { document.getElementById('verstuurd').checked=true } else { document.getElementById('verstuurd').checked=false }" /> Ontvangen<br />
<input type="checkbox" id="verstuurd" name="verstuurd" onclick="if (this.checked!=true) { document.getElementById('binnen_gekomen').checked=true } else { document.getElementById('binnen_gekomen').checked=false }" /> Verzonden
<select name="zoekdatum" style="width: 110px"> 

<?
while($record = mysql_fetch_object($sql))
{
echo '<option value='.trim($record->datumIn).'>'.trim($record->datumIn).'</option>"'."\n";

}
?>
</select>
<input type="submit" name="zoeken" value="Zoeken"
</FORM>

na het submit"Zoeken" moet het volgende gebeuren!

PHP:
<?
include('../../check.php');
//omzetten $_POST datum in MySQL datum van dd-mm-yyyy -> yyyy-mm-dd
//
$datum = explode('-',$_POST['zoekdatum']);					// datum opdelen in dag-maand-jaar
$datum_nu = $datum['2']."-".$datum['1']."-".$datum['0'];	// opnieuw samenstellen jaar-maand-dag
//
if (isset($_POST['Radio1']))
{
$tbldatum = "datumIn"; 
$fout = "Op ".$_POST['zoekdatum']." zijn er geen orders ontvangen."; 
}
else
{
$tbldatum = "datumUit"; 
$fout = "Op ".$_POST['zoekdatum']." zijn er geen orders verstuurd.";
}
//verbinding maken database
include ('../../connect.php'); //verbinding maken
//query aanmaken
$query = ("SELECT 
			date_format(datumIn, '%d-%m-%Y') AS datumIn, RefKlant, briladmin_id
			FROM tblbriladmin
			WHERE debnr = '".$_SESSION['Klant_id']."'
			AND ".$tbldatum." = '".$datum_nu."'") ;// Opzoeken order gegevens omgezette datum gebruiken
//query is aangemaakt
$sql = mysql_query($query) or die ( mysql_error( ) );
//query is uitgevoerd

if(mysql_num_rows(mysql_query($query)) == 0) // controle of er gegevens zijn
{
die ($fout);
}
else
{
echo"<span style= 'width: 100%; height: 200px'><table border= 1> Dit zijn de orders die op "
	.$_POST['zoekdatum']." binnen zijn gekomen.<br>";
echo"<tr><td> Ordernummer: </td><td> Referentie:</td><td> Datum Binnen:</td></tr>";
while($record = mysql_fetch_object($sql)){
$Ref = $record->RefKlant;
$datIn = $record->datumIn;

if (empty($ref)) $ref = ".......";
if (empty($datIn)) $datIn = "..-..-....";


echo"<strong><tr><td>".$record->briladmin_id."</td><td>".$Ref."
		</td><td>".$datIn."</td></tr></strong>";
}
echo"</table></span>";
}
?>
 
Laatst bewerkt:
Je eerste punt kun je als volgt oplossen:

Je voegt aan je input dit toe:

HTML:
checked="checked"

Daarnaast kan ik het niet echt waarderen als je me gaat emailen met de vraag of ik je vraag even op wil lossen. Ik bekijk dit forum vele malen per dag, als ik dan zin heb om te helpen zal ik dat echt wel doen ;)
 
Okey, sorry voor de mail dan.
Is ook voor het eerst dat ik een mailtje verstuur via een forum.

Hihi ik wist niet eens dat dat kon!

Maar nogmaal sorry, Ik ben een newby en probeer php te doorgronden
Maar er zitten soms een beetje diepe afgronden bij!

Grtz
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan