使用onselect查询猫鼬

时间:2018-11-13 13:20:34

标签: javascript node.js mongoose ejs

我有2个不同的下拉列表。

第一个返回客户列表。

<div class="form-group">
                        Company Name: <select id="Company" name="formValue[Company]" onchange="queryMaint(this.id,'MaintContract')">
                            <% varCustomerList.forEach(function (customer) { %>
                                <option value="<%= customer._id %>"><%= customer.Name %></option>
                            <% }); %>
                        </select>
                    </div>

第二个下拉菜单是根据第一个下拉菜单中选择的内容显示合同。

<div class="form-group">
                    Maint Contract: <select id="MaintContract" name="formValue[MaintContract] onchange="selectedMaintContract"></select>
                </div>

我还创建了如下的javascript。使用猫鼬模型中的猫鼬findById。

<script>
    function queryMaint(s1,s2){
        var MaintContractDetail = require("../../../models/maintcontract")
        var s1 = document.getElementById(s1);
        var s2 = document.getElementById(s2);
        s2.innerHTML = "";
        MaintContractDetail.findById(s1).exec(function(err, varMaintValue){
            if(err){
                req.flash("error", err);
                res.redirect("back");
            } else {
                varMaintList.forEach(function (maint)){
                    var maintOption = document.createElement("option");
                    maintOption.value = varMaintValue._id;
                    maintOption.innerHTML = varMaintValue.Name;
                    console.log(maintOption);
                    s2.options.add(maintOption);
                });
            }
        });
    }
</script>

但是对于第二个下拉菜单,我没有得到任何结果。

我对此并不陌生,我的一个同学建议不能直接从ejs中使用猫鼬函数。请为我指出正确的方向或达成此要求的替代方法。

0 个答案:

没有答案