gpt4 book ai didi

javascript - 从 <input> 值设置变量

转载 作者:行者123 更新时间:2023-11-28 08:50:45 25 4
gpt4 key购买 nike

我需要在一份包含 20 多个部分的基于 AJAX 的调查问卷上实现 Google Analytics (Universal/analytics.js)。问卷的工作方式有点像选择你自己的冒险,而后续问题都是由前面的答案决定的。

每个输入都有一个名称和一个 ID。我有兴趣从该字段中提取值并将其设置为数据层中的全局变量。所有东西都有一个唯一的 ID 和名称,我已开始将其收集到数据库中。

以下是 HTML 示例:

<table id="ctl00_ContentPlaceHolder1_2_Table1" class="CompSSRadio" cellpadding="1" cellspacing="1">
<tr>
<td class="CompSSRadioLabel">
</td>
</tr>
<tr>
<td class="CompSSRadioResponses">
<table id="ctl00_ContentPlaceHolder1_2_1_48_1" class="CompSSRadioResponses" border="0">
<tr>
<td><input id="ctl00_ContentPlaceHolder1_2_1_48_1_0" type="radio" name="ctl00$ContentPlaceHolder1$2$1_48_1" value="4" /><label for="ctl00_ContentPlaceHolder1_2_1_48_1_0"><SPAN style="FONT-FAMILY: Museo 500"><SPAN style="FONT-SIZE: 14pt"><SPAN style="FONT-FAMILY: Museo 500"></SPAN>Test answer 1</SPAN></SPAN></label></td>
</tr><tr>
<td><input id="ctl00_ContentPlaceHolder1_2_1_48_1_1" type="radio" name="ctl00$ContentPlaceHolder1$2$1_48_1" value="5" /><label for="ctl00_ContentPlaceHolder1_2_1_48_1_1"><SPAN style="FONT-FAMILY: Museo 500"><SPAN style="FONT-SIZE: 14pt"><SPAN style="FONT-FAMILY: Museo 500"></SPAN>Test answer 2</SPAN></SPAN></label></td>
</tr>
</table>
</td>
</tr>
</table>

这是“下一步”按钮:

<input type="image" name="ctl00$ContentPlaceHolder1$btnNext2" id="ctl00_ContentPlaceHolder1_btnNext2" src="../App_Themes/Images/Right.gif" onclick="javascript: pageTracker._trackPageview('//forward.html');window.document.getElementById('ctl00_ContentPlaceHolder1_btnNext').disabled=true;window.document.getElementById('ctl00_ContentPlaceHolder1_btnNext2').disabled=true;__doPostBack('ctl00$ContentPlaceHolder1$btnNext2','');" style="border-width:0px;" />

这是一个对表单信息执行某些操作的脚本:

<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['aspnetForm'];
if (!theForm) {
theForm = document.aspnetForm;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
</script>

我不知道我是否需要加入该内容或其他内容,因为这就是提交信息的内容。显然我一无所知。我觉得这是一个相当简单的任务,只是我缺乏 JavaScript 知识,无法编写必要的脚本。

提前谢谢!

最佳答案

如果您使用单选按钮选择多个值之一,则所有单选按钮元素必须具有相同的名称。例如,如果您有:

<input type="radio" name="sex" value="Male" id="radio_male">
<label for="radio_male">Male</label>

<input type="radio" name="sex" value="Female" id="radio_female">
<label for="radio_female">Female</label>

您只能选择“男性”或“女性”,但不能同时选择两者。考虑到这一点,在 Javascript 中访问所选值的方式应该是:

var elements = document.getElementsByName("sex");

for (i = 0; i < elements.length; i++) {
var el = elements[i];

if ( el.checked ) {
alert("Checked value: " + el.value);
break; // Because only one radio from the group will be checked, there's no point in checking the rest of them, if there are more
}
}

关于数据层,我不知道,但如果我理解得很好的话,听起来您在获取值时遇到了问题。

关于javascript - 从 &lt;input&gt; 值设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19171462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com