将JavaScript中的单选按钮作为参数传递给Django视图

2024-06-25 22:37:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个html页面,我将选中的复选框作为参数传递给django视图,这非常好用。在

在布局.html在

<form action="{% url 'URL Which calls view' %}" method="post">
{% csrf_token %}
<label class="checkbox">
  <input type="checkbox" name="checks" value="REG_AGREED_SUITE01">REG_AGREED_SUITE01
  </label>
   <hr>
  <label class="checkbox">
  <input type="checkbox" name="checks" value="REG_AGREED_SUITE02">REG_AGREED_SUITE02
  </label>
   <hr>
  <label class="checkbox">
  <input type="checkbox" name="checks" value="REG_AGREED_SUITE03">REG_AGREED_SUITE03
  </label>
   <hr>

在表单.py在

^{pr2}$

在视图.py在

def view(request):
    if request.method == 'POST':
    form = NameForm(request.POST)
    else:
    form = NameForm()
    print request.POST.getlist('checks')

    form = NameForm(request.POST)
    list1 = request.POST.getlist('checks')
    TestSuite = ', '.join(list1)

现在我有一个情况,我想将单选按钮作为django视图中的参数传递。我有一个json文件,我使用java脚本从中提取值并显示在html上。有没有办法,当我选择一个单选按钮时,我可以在django视图中将它们作为参数传递给上面的例子?或者用Django创建表单是最好的方法吗?在

在临时json在

[
    {"STBStatus": "1", "RouterSNo": "R1", "STBLabel": "STB#1", "STBSno": "M11435TDS144"},
    {"STBStatus": "1", "RouterSNo": "R1", "STBLabel": "STB#2", "STBSno": "M11543TH4292"},
    {"STBStatus": "0", "RouterSNo": "R1", "STBLabel": "STB#3", "STBSno": "SN005"},
    {"STBStatus": "1", "RouterSNo": "R1", "STBLabel": "STB#4", "STBSno": "M11509TD9937"},
    {"STBStatus": "1", "RouterSNo": "R1", "STBLabel": "STB#5", "STBSno": "M11543TH4258"},
    {"STBStatus": "0", "RouterSNo": "R1", "STBLabel": "STB#6", "STBSno": "SN005"},
    {"STBStatus": "0", "RouterSNo": "R1", "STBLabel": "STB#7", "STBSno": "SN006"},
    {"STBStatus": "0", "RouterSNo": "R1", "STBLabel": "STB#8", "STBSno": "SN007"}
]

Javascript代码:

<script>

 function stbststus(){
  show_alert()
    $.getJSON("Json", function(result){
        $("#STBStatus").empty();
          $.each(result, function(i, item){
            if(item.STBStatus == "1"){
              colorclass = "available"
            }
            if(item.STBStatus == "0"){
              colorclass = "offline"
            }
            if(item.STBStatus == "2"){
              colorclass = "In use"
            }
              $("#STBStatus").append("<label class='radio'><input type='radio' name='optradio'  class='optradio'>"+item.STBLabel +"   <i class='fa fa-circle pull-right  "+colorclass+"' aria-hidden='true'></i></label> <hr>");
          });
      });
 }
</script>

在布局.html在

  <div class="quote-text scroller" id="STBStatus"> </div> 

<div class="wrapper">
 <div class="buttonHolder" onclick="pageload()">
<p><a href="Set_Top_Box" class="btn btn-primary btn-large">Get Settopbox Status &raquo;</a></p> 

Tags: requestregitempostlabelclasscheckscheckbox
1条回答
网友
1楼 · 发布于 2024-06-25 22:37:41

Django不会处理onClick事件或任何类似的事件,因此最好使用javascript和或jquery。在

Jquery

$(function(){
  $('input[type="radio"]').click(function(){
    if ($(this).is(':checked'))
    {
      alert($(this).val());
    }
  });
});

或者对于普通JavaScript,请检查这个url Get Value of Selected Radio Button。在

相关问题 更多 >