【问题标题】:Validating html sliders验证 html 滑块
【发布时间】:2018-05-07 23:06:54
【问题描述】:

我对编程很陌生,我正在使用 Django 进行在线实验。

我们在整个实验过程中广泛使用滑块作为输入设备,我们需要找到一种方法来验证滑块,以确保我们的参与者实际上以某种方式移动/点击了滑块。

表单输入应该是整数,我试过了: 1.清除起始值 2. 将起始值设置为小数,这样在提交表单时就不会通过整数检查(由于某种原因它还是通过了) 3. 将起始值设置为字符串(完全破坏滑块)

从这些方法中没有得到任何乐趣。

我正在使用 carpe 自定义滑块在拖动滑块时删除悬停数字。 http://carpe.ambiprospect.com/slider/

这是我的代码: HTML:

<div class="form-group {% if form.trust.errors %}has-error {% endif %}">
<label class="control-label" for="trust">Your Trust</label>
<input
id="trust"
name="trust"
type="range"
style="width: 300px;"
tabindex="0"
min="0"
max="100"
step="1"
value="50.111111111111111111"
data-carpe-decimals="0"
value="{{form.trust.value}}"/>
</div>
<div class="btn_block">
    <button type="submit" class="btn btn-primary pull-right" alt="proceed to next page">Next</button>
</div>

forms.py:

class TaskbeginForm(forms.Form):
    trust = forms.IntegerField()

由于我对html很陌生,对javascript一无所知,请把我当作学龄前儿童,我可能只能理解非常简单的解决方案。

【问题讨论】:

  • 请验证 HTML。

标签: html django slider


【解决方案1】:
  1. 您的输入标签未关闭:

&lt;input id="trust" name="trust" type="range" style="width: 300px;" tabindex="0" min="0" max="100" step="1" value="50.111111111111111111" data-carpe-decimals="0" value="{{form.trust.value}}"/&gt;

  1. 有两个值归因于输入 value="50.111111111111111111" 和 value="{{form.trust.value}}。

  2. 不是必须在值标签之间插入百分比吗? value="{{form.trust.value}},应该是value={%form.trust.value%},我猜这会返回一个字符串。

【讨论】:

  • 1.你说的对。我试图取出一些未使用的代码,并且不小心也取出了关闭。 2. 第一个值是我在试验时设置的,看看将初始值设置为小数是否会使表单无效。但它没有用,而且这条线现在没有任何用处。 3. 至于值标签,我使用 docs.djangoproject.com/en/1.11/topics/templates 作为指导,他们使用 {{ 而不是 {% around values.
  • 解决问题了吗?如果没有,请随时发表评论:)
  • 嗨。回复晚了非常抱歉!不幸的是,这并不能解决我所有的问题。我需要实现某种形式的输入验证,以便参与者在继续之前必须与滑块进行交互。目前,如果参与者不与滑块交互,项目将使用默认值“50”并允许他们继续到下一页。
  • 在继续之前检查该值是否与默认值不同,如果不同则有人与之交互
  • 嗨。感谢您的答复!我认为这可能是可行的!我正在考虑将这个表单更改为十进制字段,并将默认值设置为非常接近 50 但不完全是 50(因此看起来拖动器从中间开始,而它略微偏离)。现在我还有一个问题,对不起。我如何检查这个值?我可以用 html 或 javascript 检查它(我还没有学过 JS)还是我必须在 Django 中做的事情(我不擅长但我可以尝试)?谢谢!
猜你喜欢
  • 2021-09-04
  • 2012-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-30
  • 2021-01-14
相关资源
最近更新 更多