我有一个名为scan()
. 它被循环调用。但是,它当前的工作方式:
来电scan()
等待scan()
归来
增加min
重复
我怎样才能使它同时运行2
实例scan()
。我可以在哪里将2
实例更改为3
实例4
或5
等。
示例:我希望它如何(在下面的示例中,有在任何一个时间点运行的3
实例scan()
。它不应该有超过3
扫描运行的实例(关于 while 循环条件)。
在后台调用scan()
并等待返回值。一旦它获得返回值,它就会增加min
并调用scan()
. 总是3
有运行的实例scan()
(关于 while 循环条件)
<script type="text/javascript" src="https://code.jquery.com/jquery-1.9.1.min.js"></script>
<div class="display-error" style="display: none"></div>
<form>
<label for="fname">Fruit (only correct input is: banana)</label><br>
<input type="text" id="fruit-name" name="fruit" value="banana"><br>
<button type="submit" id="submit" value="Submit">Submit</button>
</form>
<div id="results">
</div>
<script type="text/javascript">
$(document).ready(function() {
$('#submit').click(function(e) {
e.preventDefault();
var fruitName = $("#fruit-name").val();
$.ajax({
type: "POST",
url: "verify-input.php",
dataType: "json",
data: {
fruitName: fruitName
},
success: function(data) {
if (data.code == 200) {
$("#submit").html("Running Scan");
(async function() {
var fruitID = data.fruitId;
var min = 1;
while (min < 1000) {
await scan(fruitID, min, min + 30);
min = min + 30;
}
})();
} else {
$(".display-error").html("<ul>" + data.msg + "</ul>");
$(".display-error").css("display", "block");
}
}
});
});
});
function scan(vFruitId, min, max) {
return $.ajax({
type: "POST",
url: "scanner.php",
dataType: "json",
data: {
vFruitId: vFruitId,
min: min,
max: max
},
呼如林
蝴蝶刀刀
相关分类