Jump to content
php.lv forumi

aptauja un remove checked radio button


Rich Bitch

Recommended Posts

Varbūt kāds var palīdzēt, ka realizēt šādu lietu:

 

Ir aptauja ar, piemēram, 3 atbilžu variantiem. Pirmie divi ir radio pogas, pēdējais "cita atbilde" (input ar texta tipu). Vajag tā, lai ieklikšķinot šajā "citā atbildē", iezīmētā radio poga (ja bijusi kāda izvēlēta) uz reiz vairs nav iezīmēta.

 

Cerams, ka doma skaidra

Link to comment
Share on other sites

Piemēram, ja visi jautājumi ir pa parāgrāfiem.

<div class="jautajumi">
<p>
<input type="radio" name="jaut_1"/>Teksts 1<br/>
<input type="radio" name="jaut_1"/>Teksts 2<br/>
<input type="text" name="jaut_1"/>Teksts<br/>
</p>
</div>

<script>
$(document).ready(function(){
$("div.jautajumi p input[type='text']").focus(function(){
$(this).parent("input[type='radio']").removeAttr("checked");
});

});
</script>

 

Tātad, skripts visiem textboxiem kas ir zem konkrētās atrašanās vietas pieliek onFocus eventu, kad tiek noņemti viņa vecāka bērniem radio boxiem čeked atribūts...

 

(šo kodu neesmu testējis, bet vajadzētu strādāt)

Edited by briedis
Link to comment
Share on other sites

lai kļūtu skaidrāks:

<input type="radio" name="jaut" id ="q_1" value=1/> Pirmais jautājums<br />
<input type="radio" name="jaut" id ="q_2" value=1/> Otrais jautājums<br />
<input type="radio" name="jaut" id ="q_3" value=1/> Trešais jautājums<br />
Cita atbilde: <input type="text" name="jaut" id ="q_4" onfocus="nonjemt_atzimetos();"/><br />

 

tātad man vajag palīdzību uzrakstīt šo funkciju "nonjemt_atzimetos()".

Link to comment
Share on other sites

lai kļūtu skaidrāks:

<input type="radio" name="jaut" id ="q_1" value=1/> Pirmais jautājums<br />
<input type="radio" name="jaut" id ="q_2" value=1/> Otrais jautājums<br />
<input type="radio" name="jaut" id ="q_3" value=1/> Trešais jautājums<br />
Cita atbilde: <input type="text" name="jaut" id ="q_4" onfocus="nonjemt_atzimetos();"/><br />

 

tātad man vajag palīdzību uzrakstīt šo funkciju "nonjemt_atzimetos()".

 

Vispār paskatījies ko es uzrakstīju un KAM es to rakstīju???

Link to comment
Share on other sites

briedis, $(this).parent("input[type=radio]") - radio buttons nav texta lauka parents. Tavā gadījumā var rakstīt $(':checked',$(this).parent())

 

Ok, nesapratu jautājumu pirms tam

tad bez jquery

<input type="text" onfocus="nonjemt_atzimetos(this, 'jaut')" >

<script type="text/javascript">
function nonjemt_atzimetos(elements, lauks) {
	var forma = elements.form;
	if (forma[lauks]) {
		if (forma[lauks].length) {
			for (var i=0,l=forma[lauks].length;i<l;++i){
				forma[lauks][i].checked=false;
			}
		}
		else forma[lauks].checked = false;
	}
}
</script>

Link to comment
Share on other sites

Ir iespēja to izdarīt bez javascript vispār:

 

<form name="question_form" action="" method="post">
<div>
<input type="radio" name="chose" id="nr1"><label for="nr1">Izvēle nr. 1</label><br>
<input type="radio" name="chose" id="nr2"><label for="nr2">Izvele nr. 2</label><br>
<input type="radio" name="chose" id="nr3"><label for="nr3"><input type="text" name="description"></label><br>
</div>
</form>

 

Vienīgi pārbaudi pēc iespējas vairākos pārlūkos, neesmu šo pieeju izmantojis pirms tam, nav notestēta.

 

 

Sorry pasteidzos ar šo pieeju, nav viņa tik laba. Pirmām kārtām viņai ir nepieciešams javascripts, šis kods nestrādās jo nospiežot uz input lauciņu atzīmēsies atbilstošais radiobuttons un arī fokuss būs uz viņa, tātad kursoru nevar iedabūt inputā. Pielabots kods, lai šī problēma atrisinātos var būt sekojošs:

 

<form name="question_form" action="" method="post">
<div>
<input type="radio" name="chose" id="nr1"><label for="nr1">Izvēle nr. 1</label><br>
<input type="radio" name="chose" id="nr2"><label for="nr2">Izvele nr. 2</label><br>
<input type="radio" name="chose" id="nr3" onfocus="javascript: document.question_form.description.focus()"><label for="nr3"><input type="text" name="description"></label><br>
</div>
</form>

 

Ir arī vēl viens liels mīnuss, kas padara šo neizmantojamu, IE šis skripts vispār nestrādā.

Edited by Maris-S
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
Reply to this topic...

×   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...