Jump to content
php.lv forumi
  • 0

javascrpt atļaut tikai vienu checkbox


anonīms

Question

ir 2 checkboxi delivery un delivery2. Kā ar javascript panākt, lai var ieķeksēt tikai vienu? respektīvi, ja ieķeksē vienu, tad otrs izķeksējas un otrādi? Zinu, ka te labāk būtu radio buttons, bet tāda nu ir klienta vēlme ar checkbox.

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

ir 2 checkboxi delivery un delivery2. Kā ar javascript panākt, lai var ieķeksēt tikai vienu? respektīvi, ja ieķeksē vienu, tad otrs izķeksējas un otrādi? Zinu, ka te labāk būtu radio buttons, bet tāda nu ir klienta vēlme ar checkbox.

ar JS .. onchange...

uzraksti nelielu f-ju kas parbauda kurshi ir iekjekseets, un automaataa otru(vai preejos) izkjeksee araa..

principaa f-ja buus uz kadam 3-4 rindinjaam

P.S. tev tik daudz postu bijushi ka shadu elementaru JS risinajumu jau vareji izdomaat

Link to comment
Share on other sites

  • 0

javascript nav mana stiprā puse.

function checkbox()
{
    if (eval("document.myform.delivery.checked") == true) {
    document.myform.delivery2.checked = false;
    document.myform.delivery.checked = true;
    }
    if (eval("document.myform.delivery2.checked") == true) {
    document.myform.delivery2.checked = true;
    document.myform.delivery.checked = false;
    }

}

 

spiežot uz delivery, kad ir ieķeksēts delivery2 viss strādā, bet, kad ir ieķeksēts delivery, tad spiežot uz delivery2 nekas nenotiek. Kur problēma?

Link to comment
Share on other sites

  • 0

Paskaidro lūdzu klientam, ka ja cilvēks redz čekboksu, tad viņš arī sagaidīs tam atbilstošu čekboksa uzvedību (tas ir - ļaus izvēlēties vairākus), bet ja redz radio - tad uzreiz ir skaidrs, ka šeit var izvēlēties tikai vienu. Taisīt speciāli ačgārni ir tīrā cilvēku čakarēšana (bad usability), un ja cilvēkam būs izslēgts JS, būs bēdīgi...

Link to comment
Share on other sites

  • 0
function checkbox(){ 
if (this.checked) {
	document.myform[this.name === 'delivery' ? 'delivery2' : 'delivery'].checked = false;
}
}
window.onload = function(){
document.myform.delivery.onchange = document.myform.delivery2.onchange = checkbox;
}

Edited by indoom
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...