选择动态选择的选项:使用JSP + Jquery

时间:2013-01-30 16:05:09

标签: jquery jsp

我有一个包含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中进行?

2 个答案:

答案 0 :(得分:1)

通过HTML selected元素中存在<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被禁用的情况下它也能保留核心功能。

答案 1 :(得分:0)

只要您在网址中列出主题,您就可以使用以下内容获取主题:

$(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();
    }
});