データベースから値を取得する入力フィールドがあります。値は、aaa、bbb、ccc、ddd、eee、または fff で div を開くために必要な値に応じて、M、K、H、J、V、または G であると言えます。テキストとして。
ページに表示されるコードは次のとおりです。その部分が機能しているデータベースからの取得部分を省略しました (入力ボックスには、ID に応じて M、K、H、J、V、または G が表示されます)。
echo "<input type='text' name='periode' id='periode' data-related-item='" .$row['periode']. "' value='" .$row['periode']. "'>";
echo "<div class='hidden'><div id='M'>aaa</div></div>";
echo "<div class='hidden'><div id='K'>bbb</div></div>";
echo "<div class='hidden'><div id='H'>ccc</div></div>";
echo "<div class='hidden'><div id='J'>ddd</div></div>";
echo "<div class='hidden'><div id='V'>eee</div></div>";
echo "<div class='hidden'><div id='G'>fff</div></div>";
開発者モードでソース コードを確認すると、データ関連項目の部分がデータベースから正しく取得されていることがわかります。
<input type="text" name="periode" id="periode" data-related-item="M" value="M">
次のJSを使用したいのですが、テキストボックスで動作するように変更する必要があります.
<script type="text/javascript">
function evaluate1(){
var item = $(this);
var relatedItem = $("#" + item.attr("data-related-item")).parent();
if(item.is(":checked")){
relatedItem.fadeIn();
}else{
relatedItem.fadeOut();
}
}
$('input[type="checkbox"]').click(evaluate1).each(evaluate1);
</script>
最も簡単なアプローチは、オフコースの変更です。
$('input[type="checkbox"]').click(evaluate1).each(evaluate1);
の中へ
$('input[type="textbox"]').click(evaluate1).each(evaluate1);
しかし、私は何をする必要がありますか:
if(item.is(":checked")){
事前に助けてくれてありがとう。
私は以下を試しましたが、うまくいきません。
if(item.is("M||K||H||J||V||G")){
ロバート・ロザスによるソリューション
解決策はjsfiddleにあります