如何在页面加载时使用JQuery在下拉列表中显示默认值

时间:2013-09-30 18:11:58

标签: jquery drop-down-menu default

现在在页面加载时我需要选择美国作为我的默认值。

我写的代码是:

$(document).ready(function(){
    if ($("input[name='contactAddress.id']").val() == "") {

        $(contactAddress.country).find('option').filter(function() {
            return this.text == 'United States';
        }).attr('selected','selected');
        $(contactAddress.country).val('United States');
    }
});

下拉代码:

 <tr>
            <th><s:text name="contactAddress.country"/>:</th>
            <td>
                <v:list var="countries" action="country" namespace="/"/>
                <s:select name="contactAddress.country"
                    value="contactAddress.country.id"
                    headerKey="" 
                    headerValue="-- Please Select --" 
                    list="countries"
                    listKey="id" 
                    listValue="name"/>                                                      
                <s:fielderror><s:param>contactAddress.country</s:param></s:fielderror>              
            </td>
            <th><s:text name="contactAddress.zipPostalCode"/>:</th>
            <td><s:textfield name="contactAddress.zipPostalCode" /></td>
        </tr>

但这不起作用。我一直在谷歌搜索并尝试了许多不同的语法,但没有任何工作。我哪里错了。请帮忙

2 个答案:

答案 0 :(得分:1)

你试过

吗?
$("select[name='contactAddress.country']")

而不是

$(contactAddress.country)

你也知道只是写作

$(document).ready(function(){
    if ($("input[name='contactAddress.id']").val() == "") {
       $("select[name='contactAddress.country']").val('United States');           
    }
});

处理下拉选定项目的更改

注意:

jquery不理解这个

$('#contactAddress.country') 

正在寻找具有“country”类的“contactAddress”的孩子

答案 1 :(得分:0)

这应该有效

$(document).ready(function(){
    if ($("input[name='contactAddress.id']").val() == "") {

    var element = document.getElementById('#contactAddress.country');
    element.value = 'United States';

    }
});

您可能不需要ID名称中的#