Forum Moderators: open
[pre]
<script type="text/javascript">
function go()
{
var str, elms, reg;
elms = document.getElementsByTagName('input');
str = elms.input.value;
reg = /\'[red]¦[/red]\"/g
elms.output.value = str.replace(reg,"\\$&")
}
</script><input type="text" id="input">
<input type="text" id="output">
<button onclick="go()">GO</button>
[/pre]
function process(){
for(index = 0; index < document.form1.length; index++){
if(document.form1[index].value){
str = document.form1[index].value;
reg = /\'¦\"/g;
document.form1[index].value = str.replace(reg,"\\$&")
}
}
}
It's because you aren't changeing the broken ¦ pipe in the code!
-------------------------
Yeah. Strange one that.
Sure there's a decent explanation (just don't know what it is).
I had to work around it by using unicode char codes for the quote chars into the RegExp:
[pre]
<script>
function process(form)
{
var elm, reg = /\u0027¦\u0022/g;
for(index = 0; index < form.length; index++)
{
elm = form[index]
if(elm.value){
elm.value = elm.value.replace(reg,"\\$&")
}
}
}
</script><form name="form1">
<input type="text">
<input type="text">
<input type="text">
<button onclick="process(this.form)">PROCESS</button>
</form>
[/pre]