是否有一种方法(没有JS)使输入字段POST为默认值,以防某些输入字段在执行提交时为空白?
换句话说:我想避免在服务器端回收诸如
之类的东西“ID =&安培; PW =”
<form>
<input name="ID" value="stuff"/>
<input name="PW" value="stuff"/>
</form>
设置该值并不真正有用,因为用户仍然可以自己清理输入字段。
答案 0 :(得分:2)
在纯HTML中无法这样做。即使您使用JS来设置默认值,也可以拦截和修改HTTP请求。
永远不要相信输入值。你不能假设他们的价值观。
答案 1 :(得分:1)
没有。不是没有JavaScript。 ......但是使用JavaScript会很容易。不是我提倡内联脚本,而是如何:
<input name="ID" value="stuff" onBlur="this.value=this.value==''
? 'default'
: this.value;" />
您看到的Javascript是一个简单的三元运算符,遵循以下模式:
myVar = condition ? valueIfTrue : valueIfFalse;
所以它检查输入是否为空白。如果是,请将其设置为默认值;如果没有,那就让它成为。
答案 2 :(得分:1)
您应该简单地强制执行服务器端的默认值。否则,用户将始终能够绊倒您。您可以使用javascript来减少发生这种情况的可能性,但javascript将始终向用户公开。 Html没有这方面的方法,即使我错了,它确实存在,或将来也是如此 - 这样的事情也暴露给用户。
您正在谈论使用strtok
。我建议简单地打破两次令牌化。一次为&
,然后再在=
的每个结果中(显然,如果每对的第二个结果为空或null,则替换默认值)。否则,请自行将其标记,仍在服务器上。