Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何避免在使用jquery映射函数-join(/)时在初始文本框中获取额外的特殊字符_Javascript_Jquery_Springsource - Fatal编程技术网

Javascript 如何避免在使用jquery映射函数-join(/)时在初始文本框中获取额外的特殊字符

Javascript 如何避免在使用jquery映射函数-join(/)时在初始文本框中获取额外的特殊字符,javascript,jquery,springsource,Javascript,Jquery,Springsource,我有下面的javascript函数。 函数formsubmit() { var missedReasonCode=$('input[name*=“missedReasonCode”]')。映射(函数() {return$(this.id).val();}).get().join(“/”; $(“#reasonValue”).val(missdreasoncode); 警报($(“#reasonValue”).val();--能够以格式获取值列表,例如/a/b/c document.getElem

我有下面的javascript函数。

函数formsubmit()
{
var missedReasonCode=$('input[name*=“missedReasonCode”]')。映射(函数()
{return$(this.id).val();}).get().join(“/”;
$(“#reasonValue”).val(missdreasoncode);
警报($(“#reasonValue”).val();--能够以格式获取值列表,例如/a/b/c
document.getElementById(“frm1”).submit();
}
***下面是jsp页面代码的一部分:***
遗漏原因代码
添加新的“遗漏原因代码”
遗漏原因代码
代码获取值列表并保存到表单submit上的数据库中,我可以获得值列表并保存在数据库中,类似于/a/b/c


但是我想去掉这个最初的特殊字符/,任何帮助都很感激

很难准确地从jsp代码中分辨出来,但我猜您有一块HTML作为每个新添加项的模板,也就是说,从逻辑上讲,您有这样的HTML块:

  • 新项目模板(隐藏)
  • 项目a
  • b项
  • 项目c
正因为如此,
$('input[name*=“missdreasoncode”]”)
选择器正在抓取(空)模板项2,该项将添加到映射字符串的前面,因此初始值为
/
。所以你有两个选择:

  • 将选择器修改为仅包含“真实”项(通过忽略隐藏项,或使用基于真实项周围容器的更具体选择器)
  • 制作映射字符串后,使用
    子字符串修剪初始
    /
    (即
    未命中asoncode.substring(1);

  • 您必须使用
    .slice()
    以这种方式取出第一个
    “/”

    $("#reasonValue").val(missedReasonCode.slice(1));
    //--------------------^^^^^^^^^^^^^^^^^^^^^^^^^--try using this way
    
    从文档中: 给定一个表示一组DOM元素的jQuery对象,.slice()方法构造一个新的jQuery对象,其中包含start和end参数指定的元素子集(可选)。提供的起始索引标识集合中一个元素的位置;如果省略end,则此元素之后的所有元素都将包含在结果中


    伟大的很高兴这对你有帮助。
    $("#reasonValue").val(missedReasonCode.slice(1));
    //--------------------^^^^^^^^^^^^^^^^^^^^^^^^^--try using this way