2016-11-02 3 views
-1

私が選択しました:ドロップダウンのオプションを選択し、それをアクティブにしないでください。

<select class="form-control" id="category_id_select" name="Category_Id"> 
    @foreach (var category in Model.categories){ 
    <option value="@category.Id">@category.Name</option> 
    } 
</select> 

そして私は、ページの読み込みに選択する必要があり、私は値を設定入力得た:

<input type="text" class="form-control" id="cat_id" value="@Model.CategoryId"/> 

私のjsファイルは次のとおりです。

$(document).load(function() { 
    $('.combobox').combobox(); 
    var catid = $("#cat_id").val(); 
    $("#category_id_select ").val(catid); 
    $("#add_prop").click(function() { 
    alert(catid); 
}); 

を何私は間違っている?

私はその入力を非表示にし、既に選択された値でアクティブなドロップダウンを持たないことを望みます.JQueryを使用したソリューション?

+0

あなたの質問は何ですか? –

+0

これをデバッグすると、どこでどのように具体的に失敗しますか?このJavaScriptコードはまったく実行されますか?何か間違いはありますか? 'catid'の価値は何ですか?その値は 'select'に存在しますか? – David

+0

ドロップダウンのオプションを選択し、それをアクティブにしないでください。 - それは質問 – vtarbinskyi

答えて

1

あなたが作っ値の変更をトリガする必要があります。

$("#category_id_select").val(catid).change(); 
//Or 
$("#category_id_select").val(catid).trigger('change'); 

注:はあなたの選択できた余分なスペース削除:

$("#category_id_select "). 
______________________^ 

をそしてレディ機能を使用しよう:

$(function(){ 
    //Your code here 
}) 

これが役に立ちます。

$(function() { 
 
    var catid = $("#cat_id").val(); 
 
    $("#category_id_select").val(catid); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select class="form-control" id="category_id_select" name="Category_Id"> 
 
    <option value="c1">category 1</option> 
 
    <option value="c2">category 2</option> 
 
    <option value="c3">category 3</option> 
 
</select> 
 

 
<input type="text" class="form-control" id="cat_id" value="c3"/>

+0

動作しません.jsが正しく読み込まれないという問題のようです。 – vtarbinskyi

+1

最終更新は私のお手伝いをしました、ありがとうございました。 – vtarbinskyi

0
**`$(function() { 
$('.combobox').combobox(); 
var catid = $("#cat_id").attr('type', 'hidden').val(); 
$("#category_id_select").val(catid).change(); 
$("#category_id_select ").val(catid).prop('disabled', true);`** 

ザッツソリトン!みんなありがとう!

関連する問題