【问题标题】:how to get the value from the database based on the id如何根据id从数据库中获取值
【发布时间】:2019-12-03 11:06:34
【问题描述】:

我有一个显示数据库数据的下拉列表。我需要使用 jquery 和 ajax 进行动态化,它会根据用户在另一个字段上的输入隐藏一些值。

我的问题是如何根据返回的 ID 隐藏所需的选项。

views.py

def getSource(request):
    sources = Source.objects.all()
    return render(request, 'create_folder.html', {'sources':sources})

create_folder.html

<div class="formSelect" id="mouresaleMasdarDiv">
    <select id="mouresaleMasdar" name="gender" required>
        <option value="">-- soource--</option>
        {% for source in sources %} 
            <option val="{{ source.source_name }}"> {{ source.source_name }} </option>  
        {% endfor %}
    </select>
</div>

<script type="text/javascript">
    $('#mouresaleMasdar option[value="{{sources.get(pk = 1)}}"]').hide()
</script>

它给出了一个错误,所以如何根据 id 隐藏这个值。

【问题讨论】:

    标签: jquery django ajax database


    【解决方案1】:

    在选项中添加 ID

    <option data-id="{{ source.id }}" val="{{ source.source_name }}"> {{ source.source_name }} </option>
    

    我不知道它在 jquery 中是怎样的,但你可以用 JavaScript 做到这一点

    const selected = document.querySelector('option[data-id="1"]');
    selected.style.display = 'none';
    

    【讨论】:

    • 我尝试了您的选项,但没有工作所需的隐藏值仍然显示
    • 你把“1”换成你想要的id了吗?
    • 我想要的id是1
    • 你确定你有 id = 1 的源吗?因为如果您单独尝试此代码,您会发现它有效
    • 对不起我的错误它现在可以工作,但在我的情况下,我有 3 个开关盒。您的答案是从所有案例中删除该值。我想要的只是在一种情况下删除它并在其他开关情况下显示它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-09
    • 1970-01-01
    • 2019-11-18
    • 1970-01-01
    相关资源
    最近更新 更多