使用请求将值从php页面发送到选择标记

时间:2017-02-03 09:26:52

标签: php html

我想从php页面发送一个值,该值将选择值,html页面显示所选值。

这是我的代码:

Blood Group: 
<select name="bloodgp" <?php  echo($data['user_bloodgroup']==$bloodgp)?'checked':'' ?>>
    <option value="A+">A+</option
    <option value="B+">B+</option>
    <option value="AB+">AB+</option>
    <option value="O+">O+</option>
    <option value="A-">A-</option>
    <option value="B-">B-</option>
    <option value="AB-">AB-</option>
    <option value="O-">O-</option>
</select>

3 个答案:

答案 0 :(得分:0)

如果您只想在HTML页面上发送数据,那么可以通过jquery进行。您可以根据需要使用以下代码。

<html>
<head>
<script src="http://code.jquery.com/jquery-latest.min.js"
    type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $(document).on('click', '#bloodgp', function() {
            var get_selected_option_value = $(this)val();
            window.location = 'your_html_page_name/bloodgp=' + get_selected_option_value;
        });
    });
</script>
</head>
<body>
    Blood Group: 
    <select name="bloodgp" id="bloodgp" <?php echo($data['user_bloodgroup']==$bloodgp)?'checked':'' ?>>
    <option value="A+">A+</option
    <option value="B+">B+</option>
    <option value="AB+">AB+</option>
    <option value="O+">O+</option>
    <option value="A-">A-</option>
    <option value="B-">B-</option>
    <option value="AB-">AB-</option>
    <option value="O-">O-</option>
</select>
</body>
</html>

您可以使用上面的代码从URL获取值。

以上代码符合您的要求。但我建议你将值发送到PHP文件而不是HTML文件。对你来说更可行。

如果你想将数据发送到php文件,那么你可以使用ajax。您可以使用ajax找到以下代码。

<html>
<head>
<script src="http://code.jquery.com/jquery-latest.min.js"
    type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $(document).on('click', '#bloodgp', function() {
            var get_selected_option_value = $(this)val();
            window.location = 
            $.ajax({
                url: 'your_page_page_name.php',
                type: 'POST',
                dataType: 'json',
                data: {bloodgp: get_selected_option_value},
            })
            .success(function(response) {
                console.log("you have successfully sended the data");
            })
        });
    });
</script>
</head>
<body>
Blood Group: 
<select name="bloodgp" id="bloodgp" <?php echo($data['user_bloodgroup']==$bloodgp)?'checked':'' ?>>
    <option value="A+">A+</option
    <option value="B+">B+</option>
    <option value="AB+">AB+</option>
    <option value="O+">O+</option>
    <option value="A-">A-</option>
    <option value="B-">B-</option>
    <option value="AB-">AB-</option>
    <option value="O-">O-</option>
</select>
</body>
</html>

您可以在接收的php页面上使用<?php print_r($_POST); ?>来获取价值。

答案 1 :(得分:0)

考虑到您的<select>位于<form>,具体取决于methodgetpost),在提交时,该值将存储在$_GET$_POST

// Example with post
<?php
//Verifying the form has been submitted
if (isset($_POST) && isset($_POST['submit'])) {
    // here is the value you want
    $select_value = $_POST['bloodgp'];
}
?>

如果您希望在用户选择<option>而不是提交表单时执行某些操作,则可以使用 JavaScript 完成此操作。
你可以找到答案here,就像我前一段时间做的那样(阅读2个第一个答案)。

下次,请搜索已回答的问题,发布您的代码,并详细说明您的目标和方式。

答案 2 :(得分:0)

请不要费心将您的代码放在这里,这很容易理解。

你想发送一个由用户选择的血型组,现在想用html显示, 选择框的通用格式是

<select name="bloodgp">
<option value="A+">A+</option
<option value="B+" selected >B+</option>
</select>

这个选中的属性会在未检查的html上显示此内容,因此您可以使用javascript检查匹配的所有选项值,然后添加此属性,或者您可以轻松将其打印为第一个选项,如< / p>

<select name="bloodgp">
<option value = "<?php echo $data['user_bloodgroup'];?>" selected><?php echo $data['user_bloodgroup'];?></option>
<option value="A+">A+</option
<option value="B+">B+</option>
</select>

这将使该选项加倍。在我的情况下,我想使用js来过滤该选项。