各位高手,请教一个问题。我页面上默认有一组textbox(6个),用户可以再通过按钮动态添加多组(用js添加),在后台用Request.Form.Get获取textbox值,因为默认的分隔符是以逗号(,)来分隔的。而有些textbox里面肯定得包含逗号,例如备注的文本框里。这时就出错误了。请问我该怎样去更改这默认的分隔符,或是有什么别的办法来做。

解决方案 »

  1.   

    提交前,把用户输入的, ---> ,
      

  2.   

    请具体说下好么。
    model.TrainExperience = Request.Form.Get("txtTrainExperience"); 
    在提交事件里我是这样写的。如果有两个文本框,那它们之间的值是默认是以逗号分隔的假如第一个文本框里有逗号的话,这时就会分隔成三个值了,如第一个文本框的值为“abc,d”,第二个为“efg”,用Request.Form.Get获取后为“abc,d,efg”,如果再用split(',')分割的话就是三个值了"abc"  "d"  "efg",而我想要的是"abcd"  "efg"  就是这个意思。
      

  3.   

    那你就foreach每一个   textbox然后去掉","   然后在组合,然后在split,这个是一个很简单的小算法有问题吗?
      

  4.   

    那是单独的textbox才可以啊。我是通过js生成了多个。而且name都是一样的。后台是用request.form.get获取。那样不好foreach啊。
      

  5.   

    <script>
    function checkform(form){
    for(var i = 0; form.elements.length; i++)
    {
    if(form.elements[i].type=="text"){
    form.elements[i].value = form.elements[i].value.replace(",", "&#44");
    document.write(form.elements[i].value);
    }
    }
    form.submit();
    }
    </script>
      

  6.   

    <form onsubmit="checkform(this)">
    <input type="text" name="a" />
    <input type="text" name="a" />
    <input type="text" name="a" />
    <input type="text" name="a" />
    <input type="text" name="a" />
    <input type="submit" />
    </form>
      

  7.   

    解决了,直接替换半角逗号为全角逗号,谢谢大家了。
    <input type="text" name="label" size="25" maxlength="50"  onblur="javascript:this.value=this.value.replace(/,/ig,',');" />