2013-05-17 182 views
-1

以下脚本给出了选择框onchange的结果。但随着价值整个页面再次重新加载。我尝试过很多东西,但没用。获取选择框值onchange

我的代码,

<script> 
    $(function(){ 
     $("select[name='cname']").change(function() { 
     var str = ""; 
     $("select[name='cname'] option:selected").each(function() { 
      str += $(this).text() + " "; 

      }); 

      jQuery.ajax({ 
      type: "POST", 
      url:"", 
      data: $("form#a").serialize(), 

      success: function(data){ 
       jQuery(".res").html(data); 

       $('#test').html(data); 


      } 
      }); 
      var str = $("form").serialize(); 
      $(".res").text(str); 
    }); 
    }); 
    </script> 
+0

你可以做一个[小提琴](http://jsfiddle.net)?找不到重新加载页面的代码。 –

+0

实际上不是重新加载页面,而是旧的显示一次。 – user2384743

+0

参考[http://stackoverflow.com/questions/7561569/jquery-ajax-passing-value-on-php-same-page] – user2384743

回答

0

我做了一个例子的jsfiddle http://jsfiddle.net/LU24D/1/(小于你的),以显示选择的变化是如何工作的。 另外,我减少了变量'str'中的逻辑数量。

$(document).ready(function(){ 
$("select[name='cname']").change(function (evt) { 
evt.preventDefault(); 
     var str = $("select[name='cname'] option:selected").text(); 
      alert(str); 
    }); 
}); 
+0

谢谢凯文。它在警报框中工作,但我可以访问这个值在PHP vararaiable – user2384743

+0

当然,只是附加你的ajax函数再次。您可能希望在ajax调用中将属性缓存设置为false。见http://api.jquery.com/jQuery.ajax/ – Kevin

+0

你可以在小提琴上展示它 – user2384743

-1
$('#nameFont').change(function() { 


        var nameFont=document.getElementById('nameFont').value;//alert(nameFont); 

        $('#nameFontDiv').html(changefontfamily); 


     });