每次用户注册到我们的网站,我们都需要显示NDA(不公开协议).为了继续用户必须接受它.我的问题是,我在所有的一页都有NDA,用户并没有真正阅读并接受(像我们都这样做).
我想要的是确保用户读取NDA并接受一个他“读”它?
现在我现在是一个简单的jQuery验证,如果用户检查一个框并点击接受.然后转到下一页.
这是我有的
<script> $(document).ready(function() { $('#go').click(function() { // check if checkBox is check and go to next page // i have this code }); }); </script> <div> full nda <hr> <input type=checkBox> <input type=button value=go id=go> </div>
我已经有复选框和按钮的代码
我只是不想让用户盲目接受nda
谢谢
解决方法
如果您想阻止用户找到“我同意复选框”并按正确的方式提交按钮,您将不得不隐藏它,然后在阅读最后一页后显示这些输入.
这是一个可以使用的示例脚本.当您滚动页面时加载术语,最后添加一个复选框并提交按钮.
确保页面足够长,因此您必须滚动并使用.live事件(因为加载页面时复选框和输入按钮不存在)
// main page <script> function getTC() { var id = $(".paragraph:last").attr("id").replace('tnc',''); if((parseInt(id) + 1) > 10) { return; } $.post("terms.PHP?paragraph=" + id,function(r) { $('#terms').append(r); }); } $(document).ready(function() { $(window).scroll(function(){ if($(window).scrollTop() == $(document).height() - $(window).height()) { getTC(); } }); // logic for checkBox & submit using .live }); </script> <div id="terms"> <div class="paragraph" id="tnc1"> Lorem ipsum dolor sit amet ... </div> <div class="paragraph" id="tnc2"> Lorem ipsum dolor sit amet ... </div> <div class="paragraph" id="tnc3"> Lorem ipsum dolor sit amet ... </div> <div class="paragraph" id="tnc4"> Lorem ipsum dolor sit amet ... </div> </div> // PHP <?PHP // add security here if(!isset($_GET['paragraph'])) { $_GET['paragraph'] = '1'; } $_GET['paragraph'] = (int)$_GET['paragraph'] + 1; if($_GET['paragraph'] <= 10) { ?> <div class="paragraph" id="tnc<?PHP echo $_GET['paragraph'] ;?>"> Lorem ipsum dolor sit amet ... </div> <?PHP if($_GET['paragraph'] == 10) { echo '<hr/>I agree with the terms and conditions <input type="checkBox" /><input type="button" value="I accept" /><hr/>'; } }