繁体   English   中英

输入输入后,如何从字符串中提取最后一个字符?

[英]How can I extract the last character from a string after I have written in an input?

我在laravel和php中有一个项目,并且在视图中有一个输入,其中我写了一个10个字符的字符串,而其他输入的最大值是1 当我在第一个输入中写一个数字时,另一个输入必须满足第一个输入的最后一个字符。

例如:

<form action="{{route('admin.store', $admin)}}" method="POST">

  <input type="text" maxlength="10" minlength="9" id="number">

  <input type="text" maxlength="1" id="last">

  <input type="submit" value="APPLY CHANGES" onclick="return FillTextBox()">
</form>

如果我写2341325432 ,那么第二个输入必须满足值2 ,因为2是第一个输入的最后一个字符。

我尝试了一下,但是没有完全起作用。

因为在laravel中,我的控制器dd($ request-> last)返回一个空值。

<script type="text/javascript">
    function FillTextBox(){
        var string = document.getElementById('number').value;

        document.getElementById('last').value = string.charAt(string.length-1);
    }
</script>

为什么我的功能不起作用? 我试图用按钮捕获事件,或者可能在我在第一个输入中写入尝试捕获事件。

如果由于加载顺序而将JavaScript设置为在加载时执行或在DOM就绪时执行则代码将无法工作。 如果将其交换为<head><body>的底部,它将按预期工作:

 function FillTextBox() { var string = document.getElementById('number').value; document.getElementById('last').value = string.charAt(string.length - 1); } 
 <form action="new_tab.php" target="_blank" method="POST"> <input type="text" maxlength="10" minlength="9" id="number"> <input type="text" readonly="read" maxlength="1" id="last"> <input type="submit" value="APPLY CHANGES" onclick="return FillTextBox()"> </form> 

为了防止这种情况,您应该通过添加事件侦听器而不是使用onclick属性来真正利用不引人注目的JavaScript

 document.getElementById('submit').addEventListener('click', function() { var string = document.getElementById('number').value; document.getElementById('last').value = string.charAt(string.length - 1); }); 
 <form action="new_tab.php" target="_blank" rel="noopener noreferrer" method="POST"> <input type="text" maxlength="10" minlength="9" id="number"> <input type="text" readonly="read" maxlength="1" id="last"> <input id="submit" type="submit" value="APPLY CHANGES"> </form> 

除此之外,当您使用target=_"blank" ,您还想在表单中添加rel="noopener noreferrer"来防止“ Target Blank”漏洞 我已将其添加到以上示例中。

我已经将name属性添加到您的表单字段中,以在php代码上进行抓取:

<form action="test.php" target="_blank" method="POST">

  <input type="text" maxlength="10" name="number" minlength="9" id="number">

  <input type="text" maxlength="1" name="last" id="last">

  <input type="submit" value="APPLY CHANGES" onclick="return FillTextBox()">
</form>

暂无
暂无

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

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