如何实施" onKeyPress"在JSP?

时间:2016-11-21 07:04:23

标签: jquery jsp

我有以下要求:

在我的网页上,我有一个标有" Country"的文本框。 现在,如果我在国家/地区的文本框中键入内容,则另一个文本框标记为" City"应该是可见的。如果我没有在国家/地区的文本框中输入任何内容,那么#34; City"不应该是可见的。

我有以下JSP,我正在为" Country" :

<td width="20%">
    <s:label key="partner.Country" cssClass="Labels"></s:label>
    <font color="#FF0000">*</font>
</td>
<td width="20%">
    <s:textfield id="id_PartnerNameRecv" name="partnerDetails.partnerNameRecv" cssClass="Rectangle-1-Copy-4">onchange="tnKeyPressForCity(this.value)"</s:textfield>
</td>

function tnKeyPressForCity(radioButtonObj){
    var keyPressed =radioButtonObj;
    if (keyPressed != ""){
        $('#id_CityRecv').show();
    }
}

我不确定如何实现上述功能。这就是我试图创建我的功能的方式。

1 个答案:

答案 0 :(得分:0)

尝试使用这样的方法,最好使用.addClass().removeClass()代替.show()/hide()

<td width="20%">
    <s:label key="partner.Country" cssClass="Labels"></s:label>
    <font color="#FF0000">*</font>
</td>
<td width="20%">
    <s:textfield id="id_PartnerNameRecv" name="partnerDetails.partnerNameRecv" cssClass="Rectangle-1-Copy-4"></s:textfield>
</td>

JS,

$("#id_PartnerNameRecv").on('keypress', function(){

    var keyPressed = $(this).val();
    if (keyPressed != ""){
        $('#id_CityRecv').addClass('show');
    }else{
        $('#id_CityRecv').removeClass('show');
    }

});

CSS,

.show{
    display: block;
}
#id_CityRecv{
    display: none;
}