javascript - 如何在window.onload处加载javascript中的2个函数

标签 javascript

我刚刚开始学习 JavaScript,我需要加载 2 个我想在窗口加载时使用的函数。

一个函数捕获表单名称和 UTM 参数,而另一个函数生成唯一的编号。所有这些都在 HTML 页面的 javascript 中的 window.onload 上。

下面是我的脚本。

<script type="text/javascript">

var defaultHiddenFieldNameValue = "";

function getQueryStringParamValue(strQStrParam) {

var strURL = document.location.href;

var strQStrParamValue = "";

           if (strURL.indexOf('?') != -1)
           {
                       strQStrParamValue = strURL.substr(strURL.indexOf('?') + 1);
                       if (strQStrParamValue.indexOf(strQStrParam) != -1)
                       {
                                   strQStrParamValue = strQStrParamValue.substr(strQStrParamValue.indexOf(strQStrParam));
                                   strQStrParamValue = strQStrParamValue.substr(strQStrParamValue.indexOf('=') + 1);
                                   if (strQStrParamValue.indexOf('&') != -1)
                                   strQStrParamValue = strQStrParamValue.substr(0, strQStrParamValue.indexOf('&'));
                                   return strQStrParamValue;

                       }else{
                                   strQStrParamValue = defaultHiddenFieldNameValue;
                                   return strQStrParamValue;
                       }
           }else{
                       strQStrParamValue = defaultHiddenFieldNameValue;
                       return strQStrParamValue;
           }
}

// Form name goes here
var form = "formname";

function setCampaign(){

  var elqForm = document.forms[form];

  //repeat for each field to populate
    document.forms["formname"]["val1"].value = getQueryStringParamValue('utm_source');
    document.forms["formname"]["val2"].value = getQueryStringParamValue('utm_medium');  
    document.forms["formname"]["val3"].value = getQueryStringParamValue('utm_campaign');
}


function VisitorID() {
  var min = 1;
  var max = 9999999999;
  var num = Math.floor(Math.random() * (max - min + 1)) + min;
  var timeNow = new Date().getTime();
  document.getElementById('field16').value = num + '_' + timeNow;
}

function both() {
  function VisitorID();
  function setCampaign();
}

window.onload = both;
</script>

最佳答案

function both() {
  function VisitorID();//syntax error
  function setCampaign();
}

function 关键字位于函数声明之前。如果你想调用它们,你不需要它们(它们会抛出错误):

function both() {
  VisitorID();
  setCampaign();
}

关于javascript - 如何在window.onload处加载javascript中的2个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45390666/

相关文章:

javascript - Fullcalendar 显示下个月的事件,我该如何解决这个问题?

javascript - 使用 Microsoft graph 获取任务时未经授权

javascript - 在网络上的Javascript音频应用中播放测试音

javascript - 我创建的简单对象无法正常工作?

javascript - 字符串比较真的不安全吗?

javascript - React 中客户端身份验证的示例

javascript - 从 Node Js 套接字 io 数组获取所有套接字 id

javascript - 如何在 Angular JS 中将输入字段值转换为 Base64 编码或解码

javascript - 使用 ng-click 链接 angular js 的事件类?

javascript - 读取 CSV 错误 : Illegal Data. 发生了什么事?