Javascript HTML输入-删除前导字符

Javascript HTML输入-删除前导字符,javascript,jquery,html,string,Javascript,Jquery,Html,String,我有一个HTML表单,显示一个表格,用户可以在其中扫描产品条形码,将序列号输入文本输入字段,如下所示: <td id="9856623"><input type="text" class="form-control serialNumber" placeholder="Serial #" name="serialNumber" autocomplete="off" value=""></td> $serialNumber = 'STRQWEF412421';

我有一个HTML表单,显示一个表格,用户可以在其中扫描产品条形码,将序列号输入文本输入字段,如下所示:

<td id="9856623"><input type="text" class="form-control serialNumber" placeholder="Serial #" name="serialNumber" autocomplete="off" value=""></td>
$serialNumber = 'STRQWEF412421';

$serialFirstChar = substr( $serialNumber , 0, 1);

if ($serialFirstChar == 'S') {
    $serialNumber = substr($serialNumber, 1);
}
但我现在需要在Javascript中执行同样的操作,以更新文本输入字段中输入的序列号,因此如果存在,还需要删除前导的“S”字符。以下是输入序列号时运行的当前脚本:

$(document).ready(function() {
  $(".form-control.serialNumber").change(function() {
    //$("input[type='text']").change(function(){
    //alert( "Handler for .change() called." );
    var parent = $(this).parents('tr');
    var recid = $(this).closest('td').attr('id');
    var serialNumber = $(this).val();
    // Create a reference to $(this) here:
    $this = $(this);
    $.post('updateAsset.php', {
      type: 'updateDatabase',
      recid: recid,
      serialNumber: serialNumber
    }, function(data) {
      data = JSON.parse(data);
      if (data.error) {
        var ajaxError = (data.text);
        var errorAlert = 'There was an error updating the Serial Number - ' + ajaxError + '. Please contact the Helpdesk';
        $this.closest('td').addClass("has-error");
        //display AJAX error details
        $("#serialNumberErrorMessage").html(errorAlert);
        $("#serialNumberError").show();
        return; // stop executing this function any further
      } else {
        var dateReceived = (data.dateReceived);
        $this.closest('td').addClass("has-success")
        $this.closest('td').removeClass("has-error");
        $this.closest('tr').children('.DateReceived').html(dateReceived);
        // if you want to show a success alert enable the following
        // $("#ajaxAlert").addClass("alert alert-success").html(data.text);
      }

    }).fail(function(xhr) {
      var httpStatus = (xhr.status);
      var ajaxError = 'There was an error updating the Serial Number - AJAX request error. HTTP Status: ' + httpStatus + '. Please contact the Helpdesk';
      $this.closest('td').addClass("has-error");
      //display AJAX error details
      $("#serialNumberErrorMessage").html(ajaxError);
      $("#serialNumberError").show();
    });
  });
});

此时我不知道如何进行此操作,也不知道是否可以更新现有脚本以同时更新输入的序列号并删除任何前导字符?

您可以使用,如下所示:

<td id="9856623"><input type="text" class="form-control serialNumber" placeholder="Serial #" name="serialNumber" autocomplete="off" value=""></td>
$serialNumber = 'STRQWEF412421';

$serialFirstChar = substr( $serialNumber , 0, 1);

if ($serialFirstChar == 'S') {
    $serialNumber = substr($serialNumber, 1);
}
var serialNumber='STRQWEF412421';
if(serialNumber.charAt(0)==“S”){
serialNumber=serialNumber.substr(1);
}
console.log(serialNumber)您可以使用,如下所示:

<td id="9856623"><input type="text" class="form-control serialNumber" placeholder="Serial #" name="serialNumber" autocomplete="off" value=""></td>
$serialNumber = 'STRQWEF412421';

$serialFirstChar = substr( $serialNumber , 0, 1);

if ($serialFirstChar == 'S') {
    $serialNumber = substr($serialNumber, 1);
}
var serialNumber='STRQWEF412421';
if(serialNumber.charAt(0)==“S”){
serialNumber=serialNumber.substr(1);
}
console.log(serialNumber)您可以使用Javascript的。如果第一个字符是
S
,请将其从字符串中删除:

//用于调试
serialNumber='STRQWEF412421';
if(serialNumber.startsWith('S'))
serialNumber=serialNumber.substring(1);
console.log(serialNumber)您可以使用Javascript的。如果第一个字符是
S
,请将其从字符串中删除:

//用于调试
serialNumber='STRQWEF412421';
if(serialNumber.startsWith('S'))
serialNumber=serialNumber.substring(1);

console.log(serialNumber)如果裁剪第一个字母是你想要的,那么这会有帮助

let stringFromScanner = "ScannedString";
if(stringFromScanner.substr(0,1) == "S" || stringFromScanner.substr(0,1) == "s") {
   stringFromScanner.slice(1,stringFromScanner.length);
}

如果裁剪第一个字母是你想要的,那么这会有帮助

let stringFromScanner = "ScannedString";
if(stringFromScanner.substr(0,1) == "S" || stringFromScanner.substr(0,1) == "s") {
   stringFromScanner.slice(1,stringFromScanner.length);
}

我们只需要提一下。我们只需要提一下。谢谢@chsdk-效果很好。我现在很困惑如何用新更新的serialNumber值更新输入字段。有什么想法吗?@user982124是的,您需要在
change
事件中使用输入的
.value
属性。我会更新我的答案。谢谢@chsdk-效果很好。我现在很困惑如何用新更新的serialNumber值更新输入字段。有什么想法吗?@user982124是的,您需要在
change
事件中使用输入的
.value
属性。我会更新我的答案。