从用户输入或文本框打开URL

时间:2018-08-04 21:49:47

标签: javascript html

我想要一个简单的解决方案来将报告号下载到网站上,但是URL复杂并且需要添加的输入位于URL的中间,我的目标URL如下:http://example.com/pocservlet?ReportNumber=USERINPUT&&IPAddress=1.1.1.1&&Method=DownloadPDF < / p>

因此只能从用户输入中更改“ USERINPUT”

3 个答案:

答案 0 :(得分:1)

只需将其放在字符串的中间:

var userinput = prompt();
var url = "http://example.com/pocservlet?ReportNumber=" + userinput + "&IPAddress=1.1.1.1&Method=DownloadPDF";
window.open(url);

答案 1 :(得分:1)

您可以使用ES6模板字符串执行此操作。

请注意,较旧的浏览器或Internet Explorer不支持ES6,因此,如果您要使用ES6,则需要确保使用的是诸如Babel之类的编译器。

将字符串用反引号引起来,而不是普通引号,并插入为$ {VARIABLENAME}

简单的例子:

let userInput = "TEST";
const url = `http://example.com/pocservlet?ReportNumber=${userInput}&IPAddress=1.1.1.1&&Method=DownloadPDF`;

console.log(url);

答案 2 :(得分:0)

您可以在其中包含一个带有"USERINPUT"的字符串,并用正确的用户输入替换该字符串。 JSFiddle:http://jsfiddle.net/2t4gufqr/

var url = "http://example.com/pocservlet?ReportNumber=USERINPUT&IPAddress=1.1.1.1&Method=DownloadPDF";
var urlToOpen = url.replace("USERINPUT", document.getElementById("someInputID").value);
window.open(urlToOpen);//use window.open(urlToOpen, "_blank"); to open in new tab

演示:

<input type="text" id="url" placeholder="Enter report number">
<button onClick="openUrl()">Open URL</button>
<script>
var url = "http://example.com/pocservlet?ReportNumber=USERINPUT&IPAddress=1.1.1.1&Method=DownloadPDF";
function openUrl(){
    var urlToOpen = url.replace("USERINPUT", document.getElementById("url").value);
    alert(urlToOpen);
    window.open(urlToOpen);//use window.open(url, "_blank"); to open in new tab
}
</script>