-3

我有一个select有价值的盒子

<select onchange="javascript:get_id_val(this)" id="variation_select_61_10" name="variation[10]" class="wpsc_select_variation">
    <option value="0" disabled="disabled">-- Please Select --</option>
    <option value="13">L</option>
    <option value="12">M</option>
    <option value="11">S</option>
</select>

我正在使用 java 脚本来获取选择框的值

function get_id_val(val){
    alert(val.value);   
}

如何获得警报值,它是 php 变量中用于 mysql 查询的选项值?

4

4 回答 4

1

你这样ajax 做确保你已经包括jquery

function get_id_val(val){
$.ajax( {
    type: 'POST',
    url: your.php,
    data: "&val=" + val, 
    success: function(data) {
        alert("data")
    }
} );
}
// in your php file
echo     $_POST['val'];
//mysql_query("....");

希望这是有道理的

于 2013-05-01T06:39:55.123 回答
1

如果它仅用于获取所选选项的值,那么只需在 javascript 中执行此操作

var Value = $("#variation_select_61_10").val();
alert(Value);

无需在 onchange 函数中传递任何值

于 2013-05-01T06:45:03.217 回答
0

你应该使用 Ajax,

索引.php

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
function get_id_val(val){   
    var option = val.options[val.selectedIndex];
    $.ajax({
        type: "POST", 
        url: "sql.php",
        data: "value="+option.value,
        success: function(message){ 
            $("#result").html(message);
        }       
    });

}
</script>
<select onchange="javascript:get_id_val(this)" id="variation_select_61_10" name="variation[10]" class="wpsc_select_variation">
    <option value="0" disabled="disabled">-- Please Select --</option>
    <option value="13">L</option>
    <option value="12">M</option>
    <option value="11">S</option>
</select>

<div  id="result">
*/result shows here /*
</div>

sql.php

<?php 
$value = $_POST['value'];
echo " INSERT INTO ..... WHERE value = '$value' ";

?>

我希望这能帮到您。

于 2013-05-01T07:03:52.163 回答
0

在更改功能上,您可以分配选择框的值,然后在 php 提交表单,您可以在发布数据中检索该值

  function get_id_val(val){
      document.getElementById('variation_select_61_10').value = val.value;
     document.getElementById('form-id').submit();

    }

在 PHP 上

$value = $_POST['variation'];
于 2013-05-01T06:38:17.100 回答