javascript - 在输入框中生成 0000 到 9999 的数字
问题描述
我想制作一个 JavaScript 脚本,它会生成从 0000 到 9999 的数字,不是随机生成的,而是会一个接一个地尝试每个数字,比如 0000、0001、0002 ...,然后会立即按下提交按钮,页面刷新后脚本应保持运行。
输入框:
<input id="form_Number" name="form[Number]" required="required" class="form-control" value="" type="text" pattern="[0-9]*" data-kpxc-id="form_Number">
提交按钮:
<button type="submit" id="form_submit" name="form[submit]" class="btn-primary btn">Submit</button>
这是一个使用代码登录的原始网站,它也没有验证码。无论哪种方式,它都应该尝试每个组合,直到它成功登录,就像脚本放入这些组合并立即按下按钮,然后如果失败,页面刷新和脚本应该保持运行并一遍又一遍地放置这些组合。与其说是严肃的目的,不如说是为了好玩。此外,我必须以实际用户身份登录网站才能访问此输入框。
解决方案
如果我理解正确,您希望强制执行某些操作。我写这个答案的假设是你不会用它来做坏事。
您可能正在寻找 ajax 请求。我将在 jQuery 中编写此代码,因为它使示例不那么模糊,您可能需要根据需要重写它。
这将触发 10 个(因此该示例仍然是示例)请求并将结果返回到 div。您可能想要其他东西,只需编辑.then()
函数的内容。
function probeForResult(iNumber){
var $target = $(`<div id="result${iNumber}" />`);
$target.html(`Waiting for result (${iNumber})...`);
$('#wrapper').append($target);
$.post('/some/url', {form: {number: iNumber}})
.then(response=>{
$target.html(response);
// Reponse is likely not some string. You might want to check header,
// or something else that is it returning
console.log(response);
})
.catch(()=>{
$target.html('Whoops, error. Does the url exist?'); // the url in this example doesnt exists
});
}
$('#wrapper').html('');
for( let i=0; i<=10; i++){
probeForResult(i);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="wrapper">
Did nothing so far
</div>
免责声明:将此设置为 10.000 次迭代可能会炸毁您的浏览器 :)
推荐阅读
- azure-logic-apps - microsoft flow null required parameter
- laravel-5 - 带有标签输入的 Laravel Bootstrap 4
- terraform - 结构 terraform 模板和文件夹的建议
- javascript - dragover 事件,目标需要是可拖动的元素
- html - 在 svg 中绘制路径,垂直线之间有 90° 弧
- cordova - 离子类型错误:无效数据
- javascript - 将快速验证函数作为单独的语句调用而不是使用逗号分隔的调用不起作用
- node.js - next.js 的缺点超过 create react app + redux + ssr
- android - 方法总是从 Firestore 数据库查询返回 false
- django - Django如何在一篇文章中处理模型之间具有一对多关系的两种表单