2016-05-06 4 views
0

私はSharepointによって自動生成される動的なフィールド名を持っています。私が達成しようとしている機能は、一般的にシェアポイントの外では簡単ですが、これらの自動生成IDを使用すると、少し複雑になります。私がしようとしているのは、メニューが変化して本質的に値を警告するときに警告を発することだけです。選択メニューのIDにはvar sec2があります。メニューには、地域とエンタープライズのオプションがあります。変更に際して、現在のところ、両方のオプションについて "Reg"に警告するだけであり、理由はわかりません。あなたのコードでjquery change menuグリッチ

$(document).ready(function(){ 
 

 
    var selected = $("selected[title = 'LocationCustom Required Field']").val(); 
 
var sec2 = $("select[id = 'LocationCustom_4a457955-01c5-44ff-b4c8-722325e680f4_$DropDownChoice']").val(); 
 
$("select[title = 'LocationCustom Required Field']").on("change", function(){ 
 

 
//alert(sec2); 
 

 
    }); 
 

 

 
    var sec2 = $("selected[id = 'LocationCustom_4a457955-01c5-44ff-b4c8-722325e680f4_$DropDownChoice']").val(); 
 
$("select[id = 'LocationCustom_4a457955-01c5-44ff-b4c8-722325e680f4_$DropDownChoice']").on("change", function(){ 
 
alert(sec2); 
 

 
    if (sec2== "Regional"){ 
 
      alert("ent"); 
 

 
    } else{ 
 

 
      alert("Reg"); 
 
    } 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>

答えて

0

、あなたは最初にSEC2の値を設定して、あなたのonchangeイベントを通してそれを警告していますが、その値を再割り当てされていませんされています。

選択ボックスの値を変更しても、sec2の値が自動的に変更されるわけではありません。変更する機能の一部としてその値を含める必要があります。

selected.onchange(function(){ 
    sec2 = selected.val(); //this will grab the new value from the select box 
    alert(sec2); 
})