Home Articles FAQs XREF Games Software Instant Books About Feedback Search Site-Map
irt.org logo

Q891 How can I change all occurences of one character to another character within all the text and textareas in a form?

irt.org | Knowledge Base | JavaScript | Form 6 | Q891 [ previous next ]

Q891 How can I change all occurences of one character to another character within all the text and textareas in a form?

Try the following:

<script language="JavaScript"><!--
function replace(string,text,by) {
// Replaces text with by in string
    var strLength = string.length, txtLength = text.length;
    if ((strLength == 0) || (txtLength == 0)) return string;

    var i = string.indexOf(text);
    if ((!i) && (text != string.substring(0,txtLength))) return string;
    if (i == -1) return string;

    var newstr = string.substring(0,i) + by;

    if (i+txtLength < strLength)
        newstr += replace(string.substring(i+txtLength,strLength),text,by);

    return newstr;
}

function replaceFormFields(what,text,by) {
    for (var i=0; i<what.elements.length;i++) {
        if (what.elements[i].name.indexOf('text') != -1)
            what.elements[i].value = replace(what.elements[i].value,text,by);
    }
}
//--></script>

<script language="JavaScript1.1"><!--
function replaceFormFields(what,text,by) {
    for (var i=0; i<what.elements.length;i++) {
        if (what.elements[i].type == 'text' || what.elements[i].type == 'textarea')
            what.elements[i].value = replace(what.elements[i].value,text,by);
    }
}
//--></script>

<form>
<input name="text1" type="text" value="x xx xxx xx x">
<br><textarea name="text2">x xx xxx xx x</textarea>
<p><input type="button" onClick="replaceFormFields(this.form,'x','y')">
</form>

Provide feedback ...
AddThis Social Bookmark Button

Provide feedback ... AddThis Social Bookmark Button


Last Updated: 30th March 2008. Maintained by: Martin Webb and Michel Plungjan
irt.org liability, trademark, document use, privacy statement and software licensing rules apply.
Copyright © 1996-2008 irt.org, All Rights Reserved.