如果选择了选项,则显示文本区域 PHP

Make textarea appear if option selected PHP

据我所知有人问了这个问题,所以我对此感到非常抱歉,正如标题所说,如果在 .PHP(文件格式),所以这是我的 PHP 代码:

    <table>
        <tr class="space">
            <td><label>Warranty :</label></td>
            <td><select name="p_warranty" id="a">
                <option value="">>--------Select One--------<</option>
                <option value="Other" >NO WARRANTY</option>
                <option value="AP WARRANTY">AP WARRANTY</option>
                <option value="FULL WARRANTY">FULL WARRANTY</option>
                </select>
            </td>
        </tr>
    </table>
    <table>
        <tr class="space">
            <td><label>Why No Warranty? :</label></td>
            <td><textarea name="p_remark" id="p_remark" type="text" rows="6" cols="65"></textarea></td>
        </tr>
    </table>

这是我的 javascript:

$("#p_remark").hide();

$( "#a" ).change(function() {
   var val = $("#a").val();
if(val=="Other"){
    $("#p_remark").show();
} else {
    $("#p_remark").hide();
}
});

我已经在 jsfiddle 上测试了它,它工作正常,直到我创建了我的 PHP 和 javascript 文件,它没有正常工作,是的,我确实导入了 jquery 使用 CDN

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>

我在这里错过了什么?? Fiddle

您的代码应在 DOM 就绪时执行,因此请执行以下操作:

$(function() {
   ... your code here ...
});

结束您的代码可以优化为:

$(function() {
    $("#p_remark").hide();
    $("#a").change(function() {
      $("#p_remark").toggle($(this).val() == "Other");
    });
});

是的。 @Reflective 和@abs 关于需要加载你的 jQuery 代码是正确的,如果你还没有这样做的话。

我附上了一张屏幕截图,显示了您输入到 JSFiddle 中的代码是如何为您加载的。