如何从输入值中删除字符串?

时间:2018-03-28 07:05:38

标签: javascript jquery

我有read this answer on SO,这是我正在使用的代码:

HTML

<button type="button" class="removeJiku btn btn-danger">Remove</button>

<input name="usp-custom-2" id="usp-custom-2" type="text" value="" data-required="true" placeholder="Example Input 2" class="usp-input usp-input-custom usp-form-253" required="required">

JS

  $(".removeJiku").on("click", function(){
    var removeThisId = "<?php echo $idThisPost; ?>";
    $("#usp-form-253 #usp-custom-2").val($("#usp-form-253 #usp-custom-2").val().replace(removeThisId));
  });

phpvar removeThisId设为248

但是当我点击remove button时,输入字段值变为:

  

undefined248

虽然我希望简单地删除该值。

另请注意,input values可能有248,242所以两个变量和一个逗号,点击删除应删除当前ID和逗号(如果存在)。

1 个答案:

答案 0 :(得分:1)

您需要将其替换为''(无值)以摆脱undefined。此外,由于您使用的是id选择器,因此您可以在查询选择器中使用usp-custom-2 ID,而无需使用id usp-form-253。对于示例,我预设了input的值。

&#13;
&#13;
$(".removeJiku").on("click", function(){
    var removeThisId = "248";
    $("#usp-custom-2").val($("#usp-custom-2").val().replace(removeThisId,''));
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id='#usp-form-253'>
<button type="button" class="removeJiku btn btn-danger">Remove</button>

<input name="usp-custom-2" id="usp-custom-2" type="text" data-required="true" placeholder="Example Input 2" class="usp-input usp-input-custom usp-form-253" required="required" value='248abcd'>
</form>
&#13;
&#13;
&#13;