Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.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/7/sqlite/3.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 需要在查询字符串列表后包含#锚定_Javascript_Html_Http Get - Fatal编程技术网

Javascript 需要在查询字符串列表后包含#锚定

Javascript 需要在查询字符串列表后包含#锚定,javascript,html,http-get,Javascript,Html,Http Get,表单是“获取”一个API,该API在querystring之外运行 其中一个参数是PackageID,表示休假包。为了让packageID出现,我还需要在get请求的末尾附加“#packages” 因为不是所有的表单“get”都有一个包,所以我需要它是动态的。我尝试添加一个以“#packages”作为值的隐藏字段,但是“#”是自动编码的,因此在服务器获取URL时不会注册 对于我来说,通过javascript动态地包含querystring中显示的“#packages”的最佳方式是什么?谢谢 您不

表单是“获取”一个API,该API在querystring之外运行

其中一个参数是PackageID,表示休假包。为了让packageID出现,我还需要在get请求的末尾附加“#packages”

因为不是所有的表单“get”都有一个包,所以我需要它是动态的。我尝试添加一个以“#packages”作为值的隐藏字段,但是“#”是自动编码的,因此在服务器获取URL时不会注册

对于我来说,通过javascript动态地包含querystring中显示的“#packages”的最佳方式是什么?谢谢

您不能使用常规表单submit动态追加锚

您可以拦截submit事件,并将表单的target属性更改为包含锚的URL。至少在Firefox中,浏览器将在正确的位置(锚之前)插入查询字符串

例如:

<form action="test.htm" method="get" onsubmit="this.action += '#anchor'">
<input type="hidden" name="foo" value="bar">
<input type="submit">
</form> 

(注意:这是为了举例说明。我不会将提交事件处理程序与我的HTML内联。)

或者,您可以尝试构建自己的URL(包括查询字符串和锚定),然后将
document.location
设置为该URL