How to replace part of an input value in jquery?

2019-04-22 20:39发布

问题:

I've been trying to figure out a way to replace part of a string in an input value, but haven't been able to get it working.

the input field looks like this:

<input type="text" value="20,54,26,99" name="ids" />

I've tried:

$('input[name=ids]').val().replace("54,","");

and

var replit = $('input[name=ids]').val();
replit.replace("54,","");
$('input[name=ids]').val(replit);

but neither worked?

回答1:

$('input[name=ids]').val(function(index, value) {
   return value.replace('54,', '');
});


回答2:

I've just tried this

$('#title').val($('#title').val().replace("54,",""))

and it worked so i assume that it's the way you call the element "$('input[name=ids]')", why don't you try using an id selector?

$('#ids')


回答3:

try

replit = replit.replace("54,","");


回答4:

var replit = $('input[name=ids]').val().replace("54,","");
$('input[name=ids]').val(replit);

hope that helps :)

EDIT: if you want a working example: http://jsfiddle.net/Damien_at_SF/XQQC2/

:)



回答5:

I used this method, however I also included a line of code that replaces part of a string.

var matval = document.getElementById("MaterialNumber").value;

var matNum = matval.replace("P", "");

document.getElementById("MaterialNumber").value = "";

document.getElementById("MaterialNumber").value = matNum;

Generally I would not have cleared out the field before putting in the new string, but it did not work like that in this case, This might have been caused by the input method being a barcode scanner and set into a function based on a keypress of that said barcode scanner.