Cocher une checkbox avec une zone de texte

Résolu
Klytorh Messages postés 30 Statut Membre -  
Klytorh Messages postés 30 Statut Membre -
Bonjour,

Voila je commence dans la programmayion j'ai passé l'aprem a farfouiller sur le net pour avoir une reponse mais rien a faire je trouve pas....

J'ai un tableau avec plusieurs ligne (au moins 900) avec plusieurs champ de texte sur chaque ligne je voudrait que quand je modifie ma zone de texte il me coche automatiquement la checkbox de la ligne correspondante.

if ($this->_list)

			foreach ($this->_list AS $tr)
			{
				$id = $tr[$this->identifier];
				echo '<tr'.($irow++ % 2 ? ' class="alt_row"' : '').' '.((isset($tr['color']) AND $this->colorOnBackground) ? 'style="background-color: '.$tr['color'].'"' : '').'>';

				foreach ($this->fieldsDisplay AS $key => $params)
				{
					$tmp = explode('!', $key);
					$key = isset($tmp[1]) ? $tmp[1] : $tmp[0];

					if($key=='id_product')
					{
					echo '
					<td class="pointer '.(isset($params['align']) ? $params['align'] : '').'" >';
							echo '<input type="checkbox" id="BulkEdit[]" name="productBulkEdit[]" value="'.$id.'"/>';
					echo '</td>';
					echo '
					<td class="pointer '.(isset($params['align']) ? $params['align'] : '').'" >';
							echo $tr[$key];
					echo '</td>';
					}
					elseif($key=='price')
					{
						echo '<td class="pointer '.(isset($params['align']) ? $params['align'] : '').'" >';
							echo '<input style="width:80px; text-align: right;" type="text" name="productprice_'.$id.'" value="'.$tr[$key].'" onchange="productBulkEdit['.$id.'].checked"; />';
					echo '</td>';
					}
					elseif($key=='reduction_percent')
					{
						echo '<td class="pointer '.(isset($params['align']) ? $params['align'] : '').'" >';
							echo '<input style="width:50px; text-align: right;" type="text" name="reduction_percent_'.$id.'" value="'.$tr[$key].'" />';
					echo '</td>';
					}
                                        elseif($key=='reduction_price')
					{
						echo '<td class="pointer '.(isset($params['align']) ? $params['align'] : '').'" >';
							echo '<input style="width:50px; text-align: right;" type="text" name="reduction_price_'.$id.'" value="'.$tr[$key].'" />';
					echo '</td>';
                                        }
                                        elseif($key=='active')
					{
						echo '<td class="pointer '.(isset($params['align']) ? $params['align'] : '').'" >';
							echo '<input '.($tr[$key] ? 'checked=checked' : '').' type="checkbox" value="1" name="productactive_'.$id.'" />';
					echo '</td>';
					}
					else....
					{


Voila j'espere que le code s'est bien indenter car je sais que c'est galere a lire sinon....

Comme vous pouvez le voir j'ai essayé de mettre un evenement "onchange="productBulkEdit['.$id.'].checked" j'avait l'espoir que sa marche mais non

le productBulkEdit[] c'est le nom de ma checkbox et $id c'est le n° de reference de mon produit qui correspond au numero de la ligne...

Bon je croit que j'ai tout renseigner au maximum, je vous remercie d'avance pour vos réponse et j'espere que ce topic pourra en aider d'autres comme moi qui commence en developpement ^^



A voir également:

1 réponse

Klytorh Messages postés 30 Statut Membre
 
c'est bon solution trouvé..

Il suffit de mettre :

onchange="form.BulkEdit_'.$id.'.checked=true "


elseif($key=='reduction_percent')
{
      
      echo '<td class="pointer '.(isset($params['align']) ? $params['align'] : '').'" >';
      echo '<input style="width:50px; text-align: right;"  type="text" 
      name="reduction_percent_'.$id.'" value="'.$tr[$key].'"       
      onchange="form.BulkEdit_'.$id.'.checked=true " />';
      echo '</td>';
}
0