在 URL 末尾添加文本输入

发布于 2024-11-02 06:59:54 字数 1447 浏览 3 评论 0原文

我有一个简单的 HTML 页面,其中有一个文本字段、一个按钮和一个 div。 我想让用户在字段中输入股票代码。当他们按下提交按钮时,图表图像将显示在 div 内。

这些图表已经存在@http://icart.finance.yahoo.com/w?s=

要获取特定符号的图表,我需要添加符号、“&”和一个大的随机数。这是一个工作示例

http://ichart.finance.yahoo.com/w? s=YHOO&1234567890

我无法将符号、& 和随机数附加到 URL 的末尾。我也不确定我是否正确使用表格。

这是代码:

    function changeChart() {
    var rand_no = Math.random();
    rand_no = rand_no * 100000000;
    var sym = document.myform.symbol.value;
    document.getElementById('divService').innerHTML = '<' + 'object id="foo" name="foo" type="text/html" data="http://ichart.finance.yahoo.com/w?s="' + sym + '"&"' + rand_no + '"><\/object>';
}

<form name = "myform">
<p>
  Enter stock symbol
  <input id="Text1" type="text" name="symbol"/>
  <input type="button" value="Go" name="Submit" onclick="changeChart(this); return false;"/>
</p>

<div id="divService">
  <object id="foo" name="foo" type="text/html" data="http://www.aol.com/"></object>
</div>


这是完整的代码,CSS 在这里无法正常显示。 https://docs.google.com/document/d/1pq39BKxWRqDS162jWss7-fvTbr0r28wq4VFiedh8SCY/edit?hl=zh-CN

I have a simple HTML page that has a text field, a button, and a div.
I want to have a user input a stock symbol into the field. When they push submit button, an image of a graph will display inside the div.

The graphs already exist @http://ichart.finance.yahoo.com/w?s=

To get a graph for a paticular symbol, I need to add the symbol, an '&', and a large random number. This is a working example

http://ichart.finance.yahoo.com/w?s=YHOO&1234567890

I am not able to make the symbol, the &, and the random number append to the end of the URL. I am also not sure if I am using form correctly.

Here is the code:

    function changeChart() {
    var rand_no = Math.random();
    rand_no = rand_no * 100000000;
    var sym = document.myform.symbol.value;
    document.getElementById('divService').innerHTML = '<' + 'object id="foo" name="foo" type="text/html" data="http://ichart.finance.yahoo.com/w?s="' + sym + '"&"' + rand_no + '"><\/object>';
}

<form name = "myform">
<p>
  Enter stock symbol
  <input id="Text1" type="text" name="symbol"/>
  <input type="button" value="Go" name="Submit" onclick="changeChart(this); return false;"/>
</p>

<div id="divService">
  <object id="foo" name="foo" type="text/html" data="http://www.aol.com/"></object>
</div>

Here is the complete code, The CSS wouldn't display properly on here.
https://docs.google.com/document/d/1pq39BKxWRqDS162jWss7-fvTbr0r28wq4VFiedh8SCY/edit?hl=en

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

耶耶耶 2024-11-09 06:59:54

我几分钟前检查了一下,似乎不需要 URL 中的 &1234567890 之类的部分,所以我会更改代码以获得以下结果:

function changeChart() {
  var sym = document.forms[0].elements['symbol'].value;
  var divContent = '<'+'object id="foo" name="foo" type="text/html" data="http://ichart.finance.yahoo.com/w?s=' + sym +'"/>';
  document.getElementById('divService').innerHTML = divContent;
}

鉴于随机数不是必需的,并且在HTML 代码:

<form name = "myform">
<p>
  Enter stock symbol
  <input id="symbol" type="text" name="symbol"/>
  <input type="button" value="Go" name="Submit" onclick="changeChart(); return false;"/>
</p>

<div id="divService">
  <object id="foo" name="foo" type="text/html" data="http://www.example.com/"></object>
    </div>
</form>

请注意,现在 id 与文本输入的 name 具有相同的值,并删除了函数调用的 this 参数。我希望这对你有帮助。 (更新:在 jsFiddle 上测试正常,这里是结果

I checked just some minutes ago and it seems there's no need for &1234567890-like part of URL, so I'd change the code to get this:

function changeChart() {
  var sym = document.forms[0].elements['symbol'].value;
  var divContent = '<'+'object id="foo" name="foo" type="text/html" data="http://ichart.finance.yahoo.com/w?s=' + sym +'"/>';
  document.getElementById('divService').innerHTML = divContent;
}

Given that random number is not necessary, and in HTML code:

<form name = "myform">
<p>
  Enter stock symbol
  <input id="symbol" type="text" name="symbol"/>
  <input type="button" value="Go" name="Submit" onclick="changeChart(); return false;"/>
</p>

<div id="divService">
  <object id="foo" name="foo" type="text/html" data="http://www.example.com/"></object>
    </div>
</form>

Note that now id has the same value as name for text input, and removed this argument for function call. I hope this helps you. (Update: Tested OK on jsFiddle and here is result)

紙鸢 2024-11-09 06:59:54

当您使用 Math.random 生成随机数时,Javascript 返回一个双精度数。当您将该随机数放入 URL 时,您希望它是一个字符串。尝试将changeChart的第一行更改为:

var rand_no = String(Math.random() * 1000000);

When you make a random number using Math.random, Javascript returns a double. When you put that random number into the URL, you want it to be a string. Try changing the first line of changeChart to this:

var rand_no = String(Math.random() * 1000000);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文