通过URL查询字符串检查webform上的复选框

时间:2017-05-23 23:42:30

标签: javascript jquery

我正在处理一个包含多个类的注册表单,可以从中选择多个类(复选框)。每个班级的文本框中还会有相应的费用。 还必须选择一个会员类别(单选按钮)。

每个复选框项都有唯一的ID和值。它们都被命名为#34; course []"。提交表单后,这些值将通过php脚本发送到注册台,该脚本会写入数据库并发送电子邮件(所有课程的标题都在"课程")。

问题在于: 我希望网站的访问者能够点击他们想要的课程旁边的链接。该链接是一个URL查询字符串,它使用默认成员资格类别预填充regform,并检查该类旁边的复选框。但到目前为止,它只适用于成员资格的radiobutton选项,而不适用于复选框类。我需要修改或替换代码以适应这些复选框,但我需要帮助。

我使用的URL查询字符串看起来像这样(不是真正的URL):

https://domain.edu/summer.php?membership=Current&courses=ClassTitle_12345

这里是来自表单页面的相关脚本[在DOM之后加载]:

function getUrlParameters() {
    var urlQuery = location.search;
    urlQuery = urlQuery.replace('?', '');

    if (urlQuery.indexOf('&') == -1) {
        checkPreselectedMembership(urlQuery);
        checkPreselectedMembership(urlQuery);
   } else {
        var params = urlQuery.split('&');
        for (var i = 0; i < params.length; i++) {
            checkPreselectedMembership(params[i]);
        }
    }
    total();
}

function checkPreselectedMembership(param) {
    var split = param.split('=');
     if (split[0] == "membership") {        
       if (split[0].match(/^[0-9a-zA-Z_]{1,20}$/)) { // only allow numbers, letters, and the underscore
            document.getElementById(split[1]).checked = true;

        }
    }
}

这里是HTML的片段:

<input name="courses[]" type="checkbox" id="class01"  onClick="classFees();total();"    value="ClassTitle1_12345" title="Check to select course">
Class Title 1</td>
$<input name="class01_fee" size="10" type="text" readonly title="class fee">

<input name="courses[]" type="checkbox" id="class02"  onClick="classFees();total();" value="ClassTitle2_34568" title="Check to select course">
Class Title 2</td>
$<input name="class02_fee" size="10" type="text" readonly title="class fee">

我希望我的问题清楚。谢谢。

0 个答案:

没有答案