Comment puis-je passer la valeur d'identification à la fonction? Ce que je fais, c'est que lorsque l'utilisateur modifie la liste déroulante, il obtiendra la valeur de la liste déroulante et obtenez également la valeur d'entrée cachée à l'intérieur de poureseach.
J'ai essayé de mon côté je change de la valeur de la liste déroulante Mais comment puis-je obtenir la valeur d'entrée dans la jQuery? Maintenant, je reçois la dernière valeur du champ de saisie. P>
$('[id^="Duration"]').change(function () {
var a=$('input[id^="activeID"]').attr('id');// how to I display the input id here
alert(a);
var value = $('input[id^="activityID"]').val();// i tried this one as well
alert(value);
var end = this.value;
alert(end);//getting drodpown id value
});
5 Réponses :
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<h2>Form control: select</h2>
<p>The form below contains two dropdown menus (select lists):</p>
<form>
<div class="form-group">
<label for="sel1">Select list (select one):</label>
<select class="form-control select" id="Sell">
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
<label for="sel1-item">Select list sell item (select one):</label>
<select class="form-control select" id="Sell-item">
<option>car</option>
<option>bike</option>
<option>cycle</option>
<option>auto</option>
</select>
</div>
</form>
</div>
</body>
</html>Je pense que vous devez vérifier mon code à nouveau, vous avez édité mon code et supprimez le $ x ++.
Aussi dans votre réponse, vous n'avez pas utilisé les champs de saisie. J'ai un champ de saisie à l'intérieur de pourcheach et j'ai besoin de cette valeur.
Je viens de recevoir l'échantillon pour JQuery.
Ce n'est pas mon problème, mais merci de la réponse, JQuery que vous avez partagée déjà dans mon code et que cela fonctionne. J'ai besoin de valeur de champ d'entrée dans la jQuery et c'est-à-dire pas dans votre réponse.
Une chose que j'ai observée dans votre code: Vous n'êtes pas du tout augmentant $ x code> n'importe où et par conséquent chaque étiquette d'entrée cachée consiste à obtenir < code> id = 'activeD1' code> p> p>
Bien sûr, merci :)
C'est ma faute que j'ai oublié d'ajouter dans la question. J'ai ajouté dans la question.
Dans la source de vue, je reçois "ActiveID1" ou "" ActiveD2 ", etc.
<?php
$x=1;
foreach ($duration as $row) {
?>
<input type="hidden" name="activeID" id="activeID<?php echo $x;?>" value="<?php echo $row->activity_name_id;?>">
<select name="Duration<?php echo $x;?>" class="form-control DurationClass" id="Duration<?php echo $x;?>">
<option selected disabled >Select year</option>
<option value="12m" <?php if($row->Duration == '12m' ){ echo 'selected="selected"'; } ?>>1 Year</option>
<option value="6m" <?php if($row->Duration == '6m' ){ echo 'selected="selected"'; } ?>>6 months</option>
</select>
<div id="results<?php echo $x;?>"></div>
<?php } ?>
<script>
$('.DurationClass').change(function () {
var a=$('input[id^="activeID"]').attr('id');
var selectID=$(this).attr('id');
//alert(a);
var value = $(this).val(); // in loop every dropdown select current option value return
alert(value);
});
</script>
Si j'essaye Var SélectionD = $ (ceci) .ATTR ('ID'); Ensuite, il affiche que l'identifiant déroulant n'est pas une valeur d'entrée.
oublier cette ligne et la valeur de Var utilisateur = $ (ceci) .val (); Ceux-ci retournent à la valeur chronométrée actuelle.
Je ne veux pas la valeur actuelle de sélection déroulante. que je l'obtiens déjà. Caton, réponse a résolu mon problème.
Vous pouvez mettre votre entrée code> et Sélectionner code> à l'intérieur d'un div code>. Lorsque les déposées sont modifiées, obtenez la Entrée CODE> SIBLES <?php
$x=1;
foreach ($duration as $row) {
?>
<div>
//Your input and select here
</div>
<?php } ?>
<script>
$('[id^="Duration"]').change(function () {
var input = $($(this).siblings("input")[0]); // get the input element
var id = input.attr("id"); //id of the input
var value = input.val(); //value of the input
alert(value);
});
</script>
Merci pour la réponse, j'ai eu une erreur dans la console après avoir sélectionné la liste déroulante "TypeError: $ (...). Frères et sœurs (...) [0] .val n'est pas un aménagement"
Il me donne une erreur "TypeError: Input.Attr n'est pas une fonction"
@ user9437856: désolé mon mauvais, les frères et sœurs () [0] renvoient un élément HTML, je dois l'analyser à l'objet JQuery. J'ai mis à jour mon code, veuillez réessayer
Oh!, Oui, enfin j'ai eu ma sortie. @CATCON, merci pour la réponse et comprenez mon problème. Je veux juste savoir sur le "div". Si j'ajoute un plus de div, que dois-je utiliser dans la jQuery?
Pourquoi je demande est, il y a un
La logique serait la même, vous mettrez la même chose que vous mettriez le div code> puis obtenez le < Code> frères et sœurs ("div") [0] code> du
Vous pouvez utiliser l'événement OnChange dans votre partie HTML du code
function myfunction () {
alert($(this).parent()); //what are you getting
alert($(this).parent().find(".activeID").value()); //what are you getting?
alert("Id of the select box is "+ this.id);
alert("Value of the select box is "+this.value );
};
Je veux juste savoir comment il affichera la valeur du champ d'entrée dans l'alerte?
@ user9437856 D'accord, je viens d'être montré au-dessus de la valeur et de l'identifiant à la fois en alerte. Vous pouvez supprimer la partie ID.
@ user9437856 OK Je l'ai eu ce que vous recherchez Essayez le code ci-dessus et dites-moi quelle sortie vous obtenez.
Essayez d'accéder à l'élément en utilisant
$ (this) code>Où devrais-je utiliser ceci?
Sélectionner est à l'intérieur de la recherche ???
Je recommande de mettre l'entrée code> et
etdans le mêmediv code>, puis lorsque vous modifiez la liste déroulante, obtenez lefrères et sœurs () Code>@sradha, oui, vous pouvez vérifier la question. Sélectionner et saisir le champ des deux sont à l'intérieur de la recherche.
Remplacez cette ligne
var a = $ ("entrée [ID ^ =" actived "] ')'). ATTR ('ID'); code> avecVAR A = (' id '); code>@ RAMESH, si j'essaie VaR A = $ (ceci) .attr ('id'); Ensuite, il affiche que l'identifiant déroulant n'est pas une valeur d'entrée. Je suis gettng "durée1" ou "durée2". J'ai besoin de valeur de champ d'entrée.
@ user9437856 My Bad, désolé, il doit être comme ceci:
var a = $ (ceci) .Infrings ("entrée [id ^ =" actived "] '). Alt (" ID "); Code>@Ramesh, j'ai essayé votre code mais il affiche "indéfini".
@ user9437856 Cela signifie que vous avez essayé d'accéder, c'est faux. Pour la solution, ajoutez une classe à l'entrée
code>. Permettez-moi de dire que la classe estentrée-entrée code>. Donc, je peux accéder à l'élément commevar a = $ (this) personnes identiques (". Entrée active"). ATTR ('ID'); CODE>