php - 如何使用 JavaScript 填充 HTML 选择列表

标签 php javascript html

我对 HTML 和 javascript 还很陌生。我知道这个代码已经存在于互联网上,但我不能让它为我工作。我在这个问题上被困了2-3天。如果您能帮助我,我将非常高兴。

这是我的问题 我想根据 optPostAppliedFor 的选定条目填充 optCategory 选择列表。为此,当我单击 optPostAppliedFor 列表时,我调用了函数change_categories(key)。代码如下

<tr>
    <td width="40%" align="right" nowrap>
        <strong>
            Post Applied for<span class="text11red">*</span> : 
        </strong>
    </td>
    <td width="60%">
        <select name="optPostAppliedFor" class="flat" onclick="change_categories(0);" />&nbsp;&nbsp;&nbsp;
            <option value="">--Select--</option>
            <?php
            foreach($App['post_applied_for'] as $key => $val){
                echo '<option value="'.($key).'">'.$val.'</option>';
            }
            ?>
        </select>
    </td>
</tr>

这是默认输入 optPostAppliedForoptCategory 的 php 代码

$App['post_applied_for'] = array(
    'Lecturer'         => 'Lecturer',
    'Business Analyst' => 'Business Analyst',
    'Deepender good'   => 'Deepender good'
);
$App['category'] = array(
    'Category1' => 'Category1',
    'Category2' => 'Category2',
    'Category3' => 'Category3'
);

请告诉我如何实现这个功能,以便达到我的目的。我尝试过,但一切都是徒劳。

function change_categoriees(key) {
    alert('asdasd');

    var z = document.getElementById('optCategory');
    var x = document.getElementById('optPostAppliedFor');
    var y = document.createElement('option');

    var display = x.options[x.selectedIndex].text;
    var option = x.options[x.selectedIndex].value;

    y.text = display;
    y.value = option;

    try {
        z.add(y,null);
    } catch(ex) {
        z.add(y);
    }

    z.options[0].text = '* '+(z.length-1)+' selected *';
}

最佳答案

我不太确定,但是......

change_categories 方法中的这两行看起来有问题:

var z = document.getElementById('optCategory');
var x = document.getElementById('optPostAppliedFor');

为了让这些语句返回某些值,您的 HTML 需要具有名称为 optCategoryoptPostAppliedForid 属性:

<select id="optPostAppliedFor">

另请注意,PHP 代码在后端服务器中运行。浏览器中运行的javascript无法直接调用PHP。

关于php - 如何使用 JavaScript 填充 HTML 选择列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6476517/

相关文章:

javascript - CKEditor跨域请求文件上传

.net - 如何从 DataGrid 获取 HTML 输出?

html - 如何创建内联 h1 和跨度,并将跨度对齐到结尾?

php - Laravel 查询生成器 - 高级条件子句(可选参数)

javascript - 从 img 标签的 src 上传图片到 php

php - 使用 PHP 处理动画图像

php - Symfony2 - 使用没有附加任何实体的表单生成器

javascript - 条件下拉菜单未按预期工作

html - 改变css样式而不影响其他元素

javascript - 如何根据 Treeview 节点填充网格(复选框选择)?