繁体   English   中英

如何从 jquery keydown 函数外部访问 codeIsbn 变量

[英]how to access codeIsbn variable from outside the jquery keydown function

你能帮我解决我的问题吗

我想获取jquery keydown函数中codeIsbn的值,然后我将它放在值bookCode中

let codeIsbn;
$('#bookISBN').keydown(function(){
    let bookIsbn = $('#bookISBN').val();
    let splitISBN = bookIsbn.split('-');
    codeIsbn = splitISBN[1]+'-'+splitISBN[2]+'-'+splitISBN[3];
    //console.log(codeIsbn);
});
console.log(codeIsbn);

$('#bookCode').val(codeIsbn);

html代码

<div class="row">
              <div class="col-lg-6 col-sm-12">
                <div class="form-group">
                  <label for="">ISBN Buku</label>
                  <input type="text" name="isbnBuku" class="form-control" id="bookISBN" data-inputmask="'mask': ['999-999-999-99-9']" data-mask placeholder="ISBN Buku">
                </div>
              </div>
              <div class="col-lg-6 col-sm-12">
                <div class="form-group">
                  <label for="">Kode Buku</label>
                  <input type="text" name="kodeBuku" id="bookCode" class="form-control" placeholder="Kode Buku">
                </div>
              </div>
            </div>

控制台日志中出现的错误未定义

您想使用 keyup,而不是 keydown。 假设 ISBN 号应该大于 10 个字符,这应该适合您。 您可能需要做一些不同的事情来验证 isbn 格式和长度。 这不是准备好用于生产的完美解决方案,但它是朝着正确方向迈出的一步。

 $(function(){ let codeIsbn; $('#bookISBN').keyup(function(){ if( $(this).val().length > 9 ) { let bookIsbn = $('#bookISBN').val(); let splitISBN = bookIsbn.split('-'); codeIsbn = splitISBN[0]+'-'+splitISBN[1]+'-'+splitISBN[2]; if( codeIsbn.length > 9 ) { $('#bookCode').val(codeIsbn); } } }); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="row"> <div class="col-lg-6 col-sm-12"> <div class="form-group"> <label for="">ISBN Buku</label> <input type="text" name="isbnBuku" class="form-control" id="bookISBN" data-inputmask="'mask': ['999-999-999-99-9']" data-mask placeholder="ISBN Buku"> </div> </div> <div class="col-lg-6 col-sm-12"> <div class="form-group"> <label for="">Kode Buku</label> <input type="text" name="kodeBuku" id="bookCode" class="form-control" placeholder="Kode Buku"> </div> </div> </div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM