从输入选择字段显示文本

时间:2015-04-07 15:07:30

标签: php html5 select input

我有一个保存到PHP的表单,其中包括以下选择输入:

<label for="category">
    <span>Event Type :</span>
    <select name="category" id="category">
        <option value="1"> Meeting</option>
        <option value="2"> Clean Up</option>
        <option value="3"> High Priority</option>
        <option value="4"> Special Projects</option>
    </select>
</label>

然后将保存的内容显示在另一个页面上,但我希望它显示文本值,而不是显示option value。 “会议”,而不是“1”

从数据库获取数据的脚本是:

// Get markers from XML - (event_data.php)
    $.get("./php/event_data.php", function (data) {
        $(data).find("marker").each(function () {
              var name = $(this).attr('name');
              var description = '<p>'+ $(this).attr('description') +'</p>';
              var type = $(this).attr('category');
              var edate = $(this).attr('edate');
              var point = new google.maps.LatLng(parseFloat($(this).attr('lat')),parseFloat($(this).attr('lon')));
              create_marker(point, name, description, edate, type, false, false, false, '');
        });
    });

并显示:

var eventContent = $('<div class="event-details">' +
        '<h3>Event Details</h3><table class="table">' +
        '<tr><th>Event Name: </th><td>' + eName + '</td></tr>' +
        '<tr><th>Event Date: </th><td>' + eDate + '</td></tr>' +
        '<tr><th>Event Type: </th><td>' + type + '</td></tr>' +
        '<tr><th>Event Details: </th><td>' + eForm + '</td></tr>' +
        '</table></div>'
        );

1 个答案:

答案 0 :(得分:0)

最简单的解决方案是创建一个php数组 - 数组的键可以是选项值(例如,1,2,3 ......),值可以是您想要显示的文本。

$categories = [1=>"Meeting", 2=>"Clean up"];
echo ($categories[$_GET['category']]);

根据具体情况,将类别放入数据库会更好。选项的值是类别的id。当您需要显示类别的名称时,可以使用该方法,您可以通过id从数据库中获取该名称。 注意:如果数据库中的类别和其他内容之间存在关系,则最好建立一对多或多对多的数据库关系。然后,您可以使用SQL JOIN语法从不同的表中选择组合的行。