不能使两个简单的JS代码同时工作

Cannot make two simple JS code to work at the same time

本文关键字:JS 代码 工作 简单 两个 不能      更新时间:2023-09-26

我对JS有基本的了解。我正试图使下面的两个函数协同工作,但我找不到解决方案。要么是其中一种,要么是另一种,但不是两者结合在一起。

<script>
function random_string(size){
var str = "";
for (var i = 0; i < size; i++){
    str += random_character();
}
return str;
}
function random_character() {
var chars = "0123456789abcdefghijklmnopqurstuvwxyzABCDEFGHIJKLMNOPQURSTUVWXYZ";
return chars.substr( Math.floor(Math.random() * 62), 1);
}
window.onload = function () {
var partnerurl = document.getElementById('field1');
              uniqueid = document.getElementById('field2');
              uniqueid.value = random_string(15);
            partnerurl.value = "www.website.com"+uniqueid.value

};
</script>

<script>
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
elqForm.elements['src'].value = getQueryStringParamValue('src');
}
window.onload = setCampaign;
</script>

非常感谢您的帮助!

干杯,

外汇

在这里的代码示例中,onload函数的最后一行缺少分号。

我也没看到你宣布uniqueid。

您的随机字符串函数运行良好,它只是让我遇到问题的window.onload启动。

以下是您的随机字符串运行良好的演示:http://jsfiddle.net/Jimmery/tv87X/

我建议在你的HTML:中用这一行加载jQuery

<script src="ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>

然后使用这个:

$(document).ready(function(){
    var partnerurl = $('field1');
    var uniqueid = $('field2');
    uniqueid.val(random_string(15));
    partnerurl.val("www.website.com/"+uniqueid.val());
};