我有一个非常具体的问题需要解决。
我正在使用营销自动化平台,该平台将预先填充数据库在页面加载时存储值的字段值。
目标是向用户询问页面上的一系列问题 - 但仅包括数据库缺少值的问题。
但是,我不想一次用超过 5 的问题轰炸用户。
这样做,下次同一个用户访问该页面时(页面上的内容根据查询字符串值显示),它应该询问NEXT 5个问题(或更少)在缺少值的位置。
这样,我可以在多个页面上使用相同的表格,同时保持问题的流畅性,也不必担心谁在进展中。
所以,一个例子是:
总问题 - 10个
John Doe第一次去页面,只看到了
q1,q3,q4,q5,q6
因为我们在数据库中有 q2 的价值,我们一次将显示限制为5个字段。
JD下次访问同一页面时会显示 q7,q8,q9和q10 (如果数据库中有值,则显示较小的字段)
我将拥有始终不变的字段,因此我们将不会显示可能显示NO字段的情况。
这有意义吗?
这是迄今为止我在功能方面提出的问题。
我需要帮助的是如何使这项工作的逻辑。
<script language="JavaScript">
var fieldName;
function getQueryVariable(variable)
{
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if(pair[0] == variable){return pair[1];}
}
return(false);
}
Requests = {
QueryString : function(item){
var svalue = location.search.match(new RegExp(“[\?\&]” + item + “=([^\&]*)(\&?)”,”i”));
return svalue ? svalue[1] : svalue;
}
}
function showField(fieldName) {
document.getElementById(fieldName).style.display = "block";
}
function hideField(fieldName) {
document.getElementById(fieldName).style.display = "none";
}
function showHideField(fieldName) {
if (document.getElementById(fieldName).style.display == "block")
{
document.getElementById(fieldName).style.display == "none";
};
if (document.getElementById(fieldName).style.display == "none")
{
document.getElementById(fieldName).style.display == "block";
};
}
function isBlank(fieldName) {
if (fieldName.value=="null" || fieldName.value=="") { return true; }
else { return false; }
}
</script>