【问题标题】:Build URL from two form fields [closed]从两个表单字段构建 URL [关闭]
【发布时间】:2013-09-15 19:54:43
【问题描述】:

本质上,我们有两个表单字段,要求用户向我们提供两个字母数字字符串,并且需要从这两个字符串构造一个 URL。但是,需要保留 URL 的基本结构。

用户将在我们网站的两个文本字段中输入请求的数字,然后单击提交按钮。此时需要将输入数据插入 URL 并在浏览器中打开。

示例:URL.com/FixedData + UserEntry1 + FixedData + UserEntry2 –– UserEntry1 & UserEntry2 将插入固定数据之间。

完成后的 URL 将显示为:http://URL.com/FixedDataUserEntry1FixedDataUserEntry2

【问题讨论】:

  • 您当前的表单 HTML/Javascript 代码是什么样的?
  • 这是一个问题吗?这就是这样做的方法var url = "url" + $("fd1")... + myFixedData + $("fd2")....
  • 这是我当前的代码:<script> function process() { var url="http://nolazombi.com/?ticket_launch=true&id=" + document.getElementById("url1").value + "&r_id=" + document.getElementByID("url2").value + "&html=true"; location.href=url; return false; } </script> <form onSubmit="return process();"> URL: <input type="text" name="url" id="url1"><br /> Registration ID: <input type="text" name="url" id="url2"> <input type="submit" value="go"> </form>

标签: javascript jquery string forms url


【解决方案1】:

http://jsfiddle.net/4M3q3/

HTML:

<input id="one"><input id="two">
<button id="open">Open</button>

JS:

$('#open').click(function() {
    var fixedData1 = 'http://www.google.com/#q=',
        fixedData2 = '+',
        userEntry1 = $('#one').val(),
        userEntry2 = $('#two').val();

    var newWindow = window.open(fixedData1 + userEntry1 + fixedData2 + two, '_blank');
    newWindow.focus();
});

【讨论】:

  • URL 与他要求的完全不同。它与查询字符串无关:)
  • @Archer 这正是他所要求的。他想在给定一些常量(在我的示例中为“google.com/#q=”)、一些用户输入、另一个常量(在我的示例中为“+”)和另一条输入的情况下构建一个 URL。我展示了如何获取用户输入的值,将这些片段连接成一个字符串,然后打开 URL。 URL 是否有查询字符串并不重要,无论如何他都会连接字符串。 (顺便说一下,示例 Google URL 没有查询字符串。)
  • 现在已经修好了——一切都很好:)
【解决方案2】:

你几乎回答了你的问题。

HTML

<input id='UserEntry1' type='text'>
<input id='UserEntry2' type='text'>

Javascript

var URLBase = "http://URL.com/fixeddata1";
var TrailingFixedData = "fixeddata2";

finalURL = URLBase + document.getElementById('UserEntry1').value + TrailingFixedData + document.getElementById('UserEntry2').value;

或者,如果您使用的是 jQuery:

finalURL = URLBase + $('#UserEntry1').val() + TrailingFixedData + $('#UserEntry2').val();

【讨论】:

    猜你喜欢
    • 2014-09-26
    • 1970-01-01
    • 2017-04-17
    • 2012-09-14
    • 1970-01-01
    • 2015-12-09
    • 1970-01-01
    • 2013-12-28
    • 1970-01-01
    相关资源
    最近更新 更多