【问题标题】:django javascript template conditional testdjango javascript模板条件测试
【发布时间】:2014-10-02 12:49:10
【问题描述】:

我希望在我的代码的 html 部分进行条件测试

html

<p class= "rep3" width="100" id="val1" data1={{ family  }} style= "display:none;">{{ family }}</p>
<p class= "rep4" width="100" id="val2" data2="" style= "display:none;"></p>
{% if data2 == "general" %}
<a href="/one_category/all/">criteria1</a>
{% else  %}
{% if data2 == "ceramic" %}
<a href="/one_category/ceramic/">criteria2</a>
{% else  %}
<a href="/image3/">criteria</a>
{% endif %}
{% endif %}

javascript

<script type="text/javascript">

$(document).ready(function() {

 var element = document.getElementById('val1');
laval1 =  element.getAttribute('data1');

var element2 = document.getElementById('val2');
element2.setAttribute('data2', laval1);

 });

</script>

我在脚本中读取了 data1 我想在 data2 中发送这些数据,然后进行测试 但它不起作用

怎么做?

【问题讨论】:

    标签: javascript html django templates setattribute


    【解决方案1】:

    此代码不起作用,因为:

    • JavaScript 代码由客户端运行,在模板标签({% if data2 == "general" %} 等)在服务器中编译很久之后。

    • 您不能像 data2 那样将数据从 JS 发送到 django。 (虽然您可以使用 AJAX),但在这种情况下不需要这样做。

    你为什么不能做这样的事情,而不是依赖 Javascript?

    <p class= "rep3" width="100" id="val1" data1={{ family  }} style= "display:none;">{{ family }}</p>
    <p class= "rep4" width="100" id="val2" data2="" style= "display:none;"></p>
    {% if family == "general" %}
    <a href="/one_category/all/">criteria1</a>
    {% else  %}
    {% if family == "ceramic" %}
    <a href="/one_category/ceramic/">criteria2</a>
    {% else  %}
    <a href="/image3/">criteria</a>
    {% endif %}
    {% endif %}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-25
      • 2011-02-04
      • 2013-04-23
      • 2021-10-08
      • 2020-09-27
      • 2019-10-05
      • 1970-01-01
      相关资源
      最近更新 更多