Mesaj SELECT öğe değeri

3 Cevap php

Ben mysql veri göndermek için jquery kullanmak.

 **In settings.php i have this short JS code:**

 $("form#submit").submit(function() {
    var fname     = $('#fname').attr('value');
    var lname     = $('#lname').attr('value'); 
	$.ajax({
		type: "POST",
		url: "settings.php",
		data: "fname="+ fname +"& lname="+ lname,
		success: function(){
			$('form#submit').hide();
			$('div.success').fadeIn();
		}
	});
return false;
});


**And this short php:**


 if (isset($_POST['fname'])){
        $fname        = htmlspecialchars(trim($_POST['fname']));
           DO SOMETHING....
 }

Bu FNAME gelen kodu: (hit ADD görüntü düğme sonra sonra Fname değerini yayınlanmıştır ..)

echo "......
      <form id='submit$i' method='post'><input type='hidden' name='fname' id='fname' class='text' value='$fm_linkaz'></div><input name='add'type='image' id='add' value='$fm_linkaz' src='s.png'/></form>..........";

Bu iyi çalışırlar. Ama bir SELECT elemanı gerek, bu yüzden i kodu değişti:

 ......

   echo "<select name=dropdown_list id='**ONAME**'><option value''>test</option>";
   for($i=0; $i < count($myarray); $i++){
   echo "<option value='$myarray[$i]'>$myarray[$i]</option>";}echo "</select>";

   ......</form>";

This is work well, but i dont know how can i modify the JS code, to post the selected value too.
Thank u for your help.

3 Cevap

Tüm javascript kodu ilk birkaç güncellemeleri gerekmektedir:

.val() yanı seçer / onay kutularını üzerinde çalışacak - nerede - .attr('value') güvenilir olmayacaktır $('#fname').val() $('#fname').attr('value') daha iyidir.

İkincisi:. Senin $ ajax veri parametresi () çağrısı (bu formu dizeye dönüştürmek hangi) bir json nesne alabilir

$.ajax({
  type: "POST",
  url: "settings.php",
  data: {
    'fname': $('#fname').val(),
    'lname': $('#lname').val(),
    'oname': $('#oname').val()
  },
  success: function(){
    $('form#submit').hide();
    $('div.success').fadeIn();
  }
});

Bir plugin bu kadar kolay kılan vardır:

$("form").ajaxForm({
   success: function(){
     $('form#submit').hide();
     $('div.success').fadeIn();
   }
});

UPDATED:

Ayrıca - <select> eleman "dropdown_list" seçildi - belki bunu yerine "oname" gibi verileri göndererek olmak istedim. Form öğeleri göndermek için "name" özelliğini kullandığınızda, id özelliği yalnızca kod css / js seçiciler kolaylaştırır.

Kullanım için seçilen değeri almak için

jQuery('#**ONAME**').val();

**ONAME** geçerli bir kimlik olup olmadığından emin değilim, ancak ** kaldırmayı deneyin

Değer kullanmak almak için

$('select[name=dropdown_list]').val();

Ayrıca kullanımı ve kimlik, ama ben bunu bazı geçersiz karakter var düşünüyorum ve ben bu işe şüphe olabilir:

$('select#**ONAME**').val();

Neyse .val() aradığınız budur. Ben de val() yerine kullanmanızı öneririz attr('value').