如何使用java脚本从url获取数据 [英] How to get data from url using java script
本文介绍了如何使用java脚本从url获取数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我尝试使用url参数获取用户名(wwww.domain.com/upload.html?user=user1),这里是我的代码,我想在html表单输入文本框中显示用户名...请帮帮我........
I try to get user name using url parameters(wwww.domain.com/upload.html?user=user1), here my code, i want to show user name in html form input text box... please help me........
<!DOCTYPE html>
<html>
<head>
<script>
var QueryString = function () {
// This function is anonymous, is executed immediately and
// the return value is assigned to QueryString!
var query_string = {};
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
// If first entry with this name
if (typeof query_string[pair[0]] === "undefined") {
query_string[pair[0]] = pair[1];
// If second entry with this name
} else if (typeof query_string[pair[0]] === "string") {
var arr = [ query_string[pair[0]], pair[1] ];
query_string[pair[0]] = arr;
// If third or later entry with this name
} else {
query_string[pair[0]].push(pair[1]);
}
}
return query_string;
}
</script>
</head>
<body>
<center>
<h2>Java Uploader Beta <BR> </h2></center>
<form id="upload_form" enctype="multipart/form-data" method="post">
<label for="user">User:</label>
<input name="user" type="text" id="user" tabindex="1" value="QueryString.user();" readonly/><br><BR>
<label for="title">Title:</label>
<input type="text" id="title" name="title" tabindex="1"/><br><BR>
<label for="artist">Artist:</label>
<input type="text" id="artist" name="artist" tabindex="2"/><br><BR>
<label for="year">Year:</label>
<input type="text" id="year" name="year" tabindex="3"/><br><BR>
<label for="album">Album:</label>
<input type="text" id="album" name="album" tabindex="4"/><br><BR>
<input type="file" accept="audio/*" name="file1" id="file1"><br><BR>
<input type="button" value="Upload File" onclick="uploadFile()"><BR>
<progress id="progressBar" value="0" max="100" style="width:300px;"></progress>
<font color="#FF0000"><h4 id="status"></h4></font>
<font color="#0099FF"><p id="loaded_n_total"></p></font>
</form>
</body>
</html>
推荐答案
您可以在javascript中使用以下功能:
You can use below function in javascript:
function parseURLParams(url) {
var queryStart = url.indexOf("?") + 1,
queryEnd = url.indexOf("#") + 1 || url.length + 1,
query = url.slice(queryStart, queryEnd - 1),
pairs = query.replace(/\+/g, " ").split("&"),
parms = {}, i, n, v, nv;
if (query === url || query === "") {
return;
}
for (i = 0; i < pairs.length; i++) {
nv = pairs[i].split("=");
n = decodeURIComponent(nv[0]);
v = decodeURIComponent(nv[1]);
if (!parms.hasOwnProperty(n)) {
parms[n] = [];
}
parms[n].push(nv.length === 2 ? v : null);
}
return parms;
}
使用此作为:
Use this as:
var urlString = "http://www.SomeUrl.com/bar?a=a+a&b%20b=b&c=1&c=2&d#hash";
urlParams = parseURLParams(urlString);
将返回一个对象
that will return a an object
{
"a" : ["a a"], /*return arrays */
"b b": ["b"], /* names having special chars */
"c" : ["1", "2"] /* an URL occurs multiple times */
"d" : [null] /* parameters without values set to null */
}
因此,
Thereby,
parseURLParams("www.YourUrl?name=something")
结果
Results
{name: ["something"]}
这篇关于如何使用java脚本从url获取数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文