代码之家  ›  专栏  ›  技术社区  ›  Matt

webforms:输入确认码后启用提交按钮

  •  1
  • Matt  · 技术社区  · 14 年前

    我正在开发一个webforms应用程序,我们希望在应用程序的某个特定点为用户设置一个速度缓冲区,因为没有更好的术语。有一个特定的动作是不应该撤销的。因此,当他们单击按钮执行该操作时,我们希望显示一个小的确认窗口,让他们输入我们提供给他们的随机字符串。一旦他们输入了这个字符串,并且它与相应的标签相匹配,提交按钮就变为启用状态,他们可以执行这个操作。但对于我的生活,我无法找到一个好的方法来做这个客户端的webforms。是否有一个简单的机制可以使用这种类型的工作流而不需要大量的回发事件?

    注意:这是一个内部应用程序,在这种情况下,高安全性不是真正必要的要求。正如我所说,这意味着要稍微降低用户的速度。

    2 回复  |  直到 14 年前
        1
  •  1
  •   Alex    14 年前

    这类似于mint.com的配置风格。

    将javascript添加到文本框 onChange onKeyUp 事件,请检查并启用按钮。

    例如:

    <script type="text/javascript">
    function checkConfirmationText(){
     // Check if value of entered text = value of hidden text
     var isOk = document.getElementById('confirmation-label').value == document.getElementById('confirmation-text').value);
    
     // Show/Hide button depending on the text
     document.getElementById('btn-submit').style.dispaly = isOk ? '' : 'none';
    }
    </script>
    
    <!--  HTML  -->
    <input type="hidden" id="confirmation-label" value="DELETE" />
    Enter "DELETE": <input type="text" id="confirmation-text" value="" onkeyup="checkConfirmationText()" />
    <input type="submit" id="btn-submit" style="display:none" />
    
        2
  •  0
  •   BlackICE    14 年前

    您可以生成javascript方法来检查代码(包括方法中的代码)服务器端,并使用registerclientscriptBlock(或任何当前方法),然后使用onblur调用该方法。