0

最初のドロップダウン リストで選択した値に関して、ドロップダウン リスト (番号 2) を無効にするスクリプトを書きたいと思います。script タグを使用して、最初のドロップダウン リストに関数と onchange 属性を記述していますが、機能していません。コードを見て、解決策を教えてください。

フォーム.jsp

    <%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>

    <head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
    </script>
    <script type="text/javascript">

    function changeDrop() {

    // Get current value
    var val= document.getElementById("ttype").value;
    $("#aap_name").attr("disabled", val=="Common");

    };
    </script>
    </head>
    <body>
    <form:form id="tfnewsearch" modelAttribute="err_model">
    <table cellpadding="1" cellspacing="1" height="250px" style="border-collapse: collapse">
    <tr>
    <td><form:label path="Err_type">Error Type</form:label></td>
    <td><form:select id="ttype" name="Err_type" path="Err_type" items="${Type_list}" onchange="changeDrop();">
    </form:select>
    </td>
    </tr>
    <tr>
    <td><p>Application </p></td>
    <td><form:select id="aap_name" path="Err_application" items="${App_list}">
    </form:select>
    </td>
    </tr>
    </table>
 </form:form>
 </body>
 </html>

そして私のコントローラーは

@RequestMapping(value="/form",method=RequestMethod.GET)  
public String  AddError(@ModelAttribute("err_model") ErrorModel errorModel,Map<String, Object> model) {  


 List<String> Type_list = new ArrayList<String>();
 Type_list.add("--Select--");  
 Type_list.add("Common");  
 Type_list.add("Specific");  
  List<String> App_list =errorService.listapplications();
  model.put("Type_list", Type_list);
 model.put("App_list", App_list);
 return "form";
}
4

2 に答える 2

0

disabledを使用して切り替えることはできません.attr("disabled", false)。とにかく、これによりドロップダウンが無効になります。代わりにこれを使用します。

$("#aap_name").attr("disabled", "disabled");
$("#aap_name").removeAttr("disabled");

これがあなたのケースでうまくいくはずのJSFiddleです

function changeDrop() {
    var val= document.getElementById("ttype").value;
    if(val == "Common") $("#aap_name").attr("disabled", "disabled");
    else  $("#aap_name").removeAttr("disabled");
};
于 2014-08-21T09:23:39.970 に答える
0

このスクリプトを試してください:

function changeDrop() {
    $("#aap_name").prop("disabled", 'Common' === $("#ttype").val());
};
于 2014-08-21T09:32:17.597 に答える