使用javascript选择列表相关的输入元素

时间:2014-05-21 12:57:13

标签: javascript php

我有症状,症状,持续时间,提示和参考文本作为我的sql表的结构。它已经填充了很多行,并且在界面上,我需要选择一个symtom,它会在另一个输入中触发它的持续时间,然后在另一个输入中触发它的提示,然后根据数据库中的行触发它的引用文本。 之后,我使用javascript在界面上添加另一行,如图所示。 dependant selection list

我真的需要你的帮助。 到目前为止,我可以成功添加新行,但问题是根据症状自动填充持续时间,提示和参考文本。

1 个答案:

答案 0 :(得分:1)

由于症状很少,您可以将它们填充到单个下拉框中,我猜您可能会在列表中使用本地存储每个症状的额外数据或在JavaScript中使用哈希(而不是必须请求选择时每个症状的异步详细信息。)

也许这就是你需要的东西;

<?php
$symptoms = getSymptomsFromDb(); // implement some way of getting the symptoms from the DB
?>

<script type="text/javascript">
var symptoms = JSON.parse('<?php echo json_encode($symptoms); ?>');

function onSelect(selectDom) { // used as handler for select change
    var selectedId = selectDom.value,
        details = null,
        i;
    for (i = 0; i < symptoms.length; i++) {
        if (symptoms[i]['symptom_id'] === selectedId) {
            details = symptoms[i];
            break;
        }
    }
    if (details !== null) {
        // populate the field with the values from details
    }
}
</script>
相关问题