如何设置javascript变量或重用另一个函数

时间:2009-04-03 02:00:22

标签: javascript

我在这里遇到了一个问题,没有详细介绍并且让每个人感到困惑,让我问一下简单的问题。

这是两个功能。我还需要在SubmitForm()函数中使用“id”变量。有人可以告诉我该怎么做?这就是我对js的新见解。 :)

感谢您的帮助。

  AC.chooseFunc = function(id,label)
  {
    document.qSearch.action = ".index.php?dc=2&id="+ id;
    //document.qSearch.action = "index.php?dc=2";
    document.qSearch.submit();
  }

  *** This one fails.
  function SubmitForm(id)
  {
    document.qSearch.action = "index.php?dc=2&id="+ id;
    document.qSearch.submit()
  }

我需要的是在SubmitForm函数中附加到查询字符串的“id”var。有人可以告诉我该怎么做吗?谢谢你的帮助!


这不可以吗?

5 个答案:

答案 0 :(得分:2)

首先,作为免责声明,我想如果您发布一个示例页面来证明文档的组合方式,我们都能够给您更好的答案。

这是一种可以让它发挥作用的方法。在脚本顶部或附近(或<script>标签)声明一个变量:

var storedId;

然后,在AC.chooseFunc的顶部,将id的值复制到storedId:

  AC.chooseFunc = function(id,label)
  {
    storedId = id;
    ...

最后,从SubmitForm的参数中删除id并改为使用storedId:

  function SubmitForm()
  {
    document.qSearch.action = "index.php?dc=2&id="+ storedId;
    document.qSearch.submit();
  }

答案 1 :(得分:1)

我不知道你是否愿意这样做,但是你可以将变量设为全局,换句话说就是在两个函数之外声明它。

答案 2 :(得分:0)

你能不能只使用一个隐藏的输入并让PHP将它添加到查询字符串中?

答案 3 :(得分:0)

id为null吗?检查id ...

的值
alert(id);

第二个功能看起来不错。问题可能是你将null传递给它。

答案 4 :(得分:0)

很明显,这两个函数没有以相同的方式被调用。

如另一条评论中所述,提醒值以查看您在该功能中真正获得的内容。 函数本身看起来很好,所以唯一的结论是它们不是使用相同的数据工作,也不是以不同的方式调用它们。

我建议在调用树中发布更多代码