functia val() din jquery

Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
sterica
Mesaje:285

functia val() din jquery

Salutare,

Din tutorialul acesta: https://marplo.net/javascript/jquery-ajax-load-js

ce face functia val() din aceasta linie de cod:

Cod: Selectaţi tot

var data = 'pag='+ $('#pag').val();
Linia de cod se poate regasi pe la jumatatea paginii

Multumesc!

MarPlo Mesaje:4343
Functia val() din urmatorul cod preia valoarea din campul (elementul de formular) cu id-ul "pag":

Cod: Selectaţi tot

$('#pag').val()
- E acelasi rezultat ca:

Cod: Selectaţi tot

document.querySelector('#pag').value

sterica Mesaje:285
in cazul prezentat, v-a prelua una din valorile din option (pag=altu)

Cod: Selectaţi tot

<select name="pag" id="pag">
  <option value="altu">Altu</option>
  <option value="php">PHP</option>
  <option value="ajax">Ajax</option>
 </select>
Ma poti ajuta si cu un alt exemplu unde s-ar mai putea folosi functia val()

Multumesc!

MarPlo Mesaje:4343
Functia val() se foloseste pentru orice camp de formular: <input>, checkbox, textarea.

Cod: Selectaţi tot

<input type='text' id='pag' value='valoare' name='nume' />
<script>
alert($('#pag').val());
</script>

sterica Mesaje:285
revin cu un alt exemplu prezentat in aceasta lectie https://marplo.net/javascript/jquery-ajax-js

Cod: Selectaţi tot

$('#crs').submit(function() {
    // preia datele din formular
    var nm = $('#crs #nm').val();
    var cs = $('#crs #cs').val();
    var cmt = $('#crs #cmt').val();

    // pune date din formular in format JSON, care va fi trimis la server
    var data_json = {'nm':nm, 'cs':cs, 'cmt':cmt};
  .....
  
  
 <form action="script.php" method="post" id="crs">
 	Nume: <input type="text" name="nm" id="nm" /><br />
 	Curs: <select name="cs" id="cs">
  			<option value="altu">Altu</option>
  			<option value="php-mysql">PHP-MySQL</option>
  			<option value="javascript">JavaScript</option>
  			<option value="actionscript">ActionScript</option>
  			<option value="jquery">jQuery</option>
 		</select><br />
 	Comentarii:<br />
 		<textarea name="cmt" id="cmt" cols="20" rows="3"></textarea>
 	<input type="submit" value="Trimite" />
</form> 
Pentru preluarea valorilor din inputuri de ce este nevoie sa se treaca si id-ul formului si nu este suficient doar id-ul inputului?

Multumesc!

MarPlo Mesaje:4343
Valorile sunt preluate cand se apasa butonul 'submit'. Asta face aceasta instructiune, detecteaza cand se efectueaza trimiterea respectivului formular:

Cod: Selectaţi tot

$('#form_id').submit(function(){
  //code executed when form #form_id is submited
});