0

我有一个包含 4 个链接的页面,每个链接如下所示。

 <a href="contact.jsp?subject=one">Link1</a>
 <a href="contact.jsp?subject=two">Link2</a>
 <a href="contact.jsp?subject=three">Link3</a>
 <a href="contact.jsp?subject=Four">Link4</a>

contact.jsp 只是一个表单,它有一个文本框和一个带有 4 个选项的表单。每当用户点击上面的链接时,它应该进入联系表单,其中实际的主题选项根据 HREF 链接中传递的查询参数(主题)选择。

可以在Jquery中做吗?

4

2 回答 2

1

selected选定的选项由HTML<option>元素中是否存在属性来标识。

只需让 JSP 相应地生成所需的 HTML。

<select name="subject">
    <option value="one" ${param.subject == 'one' ? 'selected' : ''}>one</option>
    <option value="two" ${param.subject == 'two' ? 'selected' : ''}>two</option>
    <option value="three" ${param.subject == 'three' ? 'selected' : ''}>three</option>
    <option value="four" ${param.subject == 'four' ? 'selected' : ''}>four</option>
</select>

不需要奇怪的 JS/jQuery 变通方法。无论如何,它们都是为了渐进增强。换句话说,你的 webapp 应该以这样的方式设计/开发,即使在禁用 JS 的情况下它也能保留核心功能。

于 2013-01-30T16:10:46.570 回答
0

只要您在 URL 中列出了主题,您就可以通过以下方式获取它:

$(document).ready(function(){
    function getURLParameter(name) {
        return decodeURI(
            (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
        );
    }
    $('#mySelect').val(getURLParameter('subject'));
});

然后只需确保选择框选项的值对应于“一、二、三”和“四”的可能性。

为了回应您在下面的评论,如果您想检查该值并可能显示文件上传输入,代码可能如下所示:

$(document).ready(function(){
    function getURLParameter(name) {
        return decodeURI(
            (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
        );
    }
    $('#mySelect').val(getURLParameter('subject'));
    if($('#mySelect').val() == 'three'){
        $('#myFileUpload').show();
    }
});
于 2013-01-30T16:11:09.947 回答