[英]get the value of <select> without submitting on the same page using php
希望有人可以帮助我..我使我的程序更简单,以便每个人都可以理解..我希望我的程序在不提交的情况下获得的价值,我知道这只能通过javascript或jquery完成,所以我使用onChange ,但是我想要的是当我选择一个选项时,该值应立即在同一页上但使用php传递。
<select id="id_select" name="name" onChange="name_click()">
<option value="1">one</option>
<option value="2">two</option>
</select>
<script>
function name_click(){
value_select = document.getElementById("id_select").value;
}
</script>
然后我应该在post方法中将value_select传递到php中..我不知道我该怎么做..请帮助我..
如果不提交页面,则无法使用PHP进行此操作。 在浏览器中呈现页面之前 ,PHP代码在服务器上执行。 然后,当用户在页面上执行任何操作(例如,在下拉列表中选择一个项目)时,就不再有PHP。 将此代码导入PHP的唯一方法是提交页面。
但是,您可以使用javascript获取值-然后将AJAX请求发送到传递所选值的php脚本,然后处理结果,例如
$(document).ready(function() {
$('#my_select').on('change', do_something);
});
function do_something() {
var selected = $('#my_select').val();
$.ajax({
url: '/you/php/script.php',
type: 'POST',
dataType: 'json',
data: { value: selected },
success: function(data) {
$('#some_div').html(data);
}
});
}
使用此代码,每当下拉菜单中的所选选项发生变化时,都会向您的php脚本触发POST请求,并将所选值传递给它。 然后,返回的HTML将被设置为ID为some_div
的div。
不知道..但是我想你需要的是ajax。
<script>
function name_click(){
value_select = $("#id_select").val();
$.post('path/to/your/page',{"value":value_select},function(data){
alert('done')
})
}
</script>
的PHP
$value=$_POST['value']; //gives you the value_select data
我的建议与jquery一起使用。 试试这个
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
<script>
$(document).ready(function(){
$("#id_select").change(function(){
var url = 'http:\\localhost\getdata.php'; //URL where you want to send data
var postData = {'value' : $(this).value};
$.ajax({
type: 'POST',
url: url,
data : postData,
dataType: 'json',
success: function(data) {
//
},
error: function(e) {
console.log(e.message);
}
});
})
})
</script>
在getdata.php中
<?php
var $value = $_POST['value'];
// you can do your logic
?>
Alex G告诉您(+1),然后用ajax发布信息,然后使用PHP处理该信息。 您可以在Javascript中定义一个回调,该回调将在页面响应时运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.