我只是在使用javascript,我需要在窗口加载时加载我想要使用的2个函数。
一个函数捕获表单名称和UTM参数,而另一个函数生成唯一编号。所有这些都在window.onload的javascript中为HTML页面。
我的剧本如下。
<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>
答案 0 :(得分:1)
function both() {
function VisitorID();//syntax error
function setCampaign();
}
function 关键字就在函数声明之前。如果你想打电话给他们你不需要它们(他们会抛出错误):
function both() {
VisitorID();
setCampaign();
}
答案 1 :(得分:1)
您无法调用前缀为function
的函数。这将声明该功能。
改变最后几行 -
function both() {
function VisitorID();
function setCampaign();
}
window.onload = both;
到此 -
function both() {
VisitorID();
setCampaign();
}
window.onload = both();
如果你想要执行这两个函数。