2016-07-05 2 views
2

나는 PHP 코드의 개념을 연구 중이다. 드롭 다운 상자를 선택하십시오. 텍스트 상자를 추가합니다. 나는 반복 값과 그 반대나는 반복되는 덧셈을 제거하고 싶다

$package=array("Sliver","Gold","Broze","Limited","Unlimited","Constants"); 
<select id="choose_package" > 
<?php foreach ($package as $packagevalue) {?> 
    <option value="<?php echo $packagevalue;?>"> <?php echo $packagevalue;?></option> 
<?php } ?> 
</select> 
<div class="package_limit"></div> 
$(function() { 
    $("#choose_package").on("change", function() { 
     var selectval=$("#choose_package").val(); 
     var div = $("<div />"); 
     div.html(GetDynamicTextBox(selectval)); 
     $(".package_limit").append(div); 
    }); 
    $("body").on("click", ".remove", function() { 
     $(this).closest("div").remove(); 
    }); 
}); 

function GetDynamicTextBox(value) { 
    return '<input name = "package_name_'+ value +'" readonly type="text" value = "' + value + '" />&nbsp;' + 
    '<input name = "package_price_'+ value +'" type="text" value = "" />&nbsp;'+ 
    '<input type="button" value="Remove" class="remove" />' 
} 

https://jsfiddle.net/JVRK/w7xfzdus/13/

+0

당신이 당신의 쿼리 조금 설명해 수 – abhi

+0

확인 abhi을 시도 전 할 수있다 2 "슬라이버"수 있으며 2 슬라이버 입력 텍스트 상자를 추가해야합니다. 하지만 내 쿼리는 내가 선택한 슬라이 버 및 슬라이 버 값을 선택 상자에서 제거해야합니다 및 텍스트 상자를 제거하는 경우 값을 선택 상자에 표시 값을 의미해야합니다. –

+0

만약 당신의 질문을 잘 이해하면 내 ans를 찾으십시오, 그렇지 않으면 알려주십시오 당신은 다른 것을 원한다. – abhi

답변

1

새로운 사업부를 추가하기 전에

var arr = new Array(); 
$("#choose_package").on("change", function() { 
    var selectval=$("#choose_package").val(); 
    if($.inArray(selectval, arr) == -1) { // check if selected value is not in array then only append 
     var div = $("<div />"); 
     div.html(GetDynamicTextBox(selectval)); 
     $(".package_limit").append(div); 
     arr.push(selectval); // push selected value in array 
    } 
}); 
, 확인하십시오. 새로운 요소는 이미 생성 된 :

if ($('input[name="package_name_' + selectval + '"]').length == 0) { 
    $(".package_limit").append(div); 
} 

내 조각 :

$(function() { 
 
    $("#choose_package").on("change", function() { 
 
    var selectval=$("#choose_package").val(); 
 
    var div = $("<div />"); 
 
    div.html(GetDynamicTextBox(selectval)); 
 
    if ($('input[name="package_name_' + selectval + '"]').length == 0) { 
 
     $(".package_limit").append(div); 
 
    } 
 
    }); 
 
    $("body").on("click", ".remove", function() { 
 
    $(this).closest("div").remove(); 
 
    }); 
 
}); 
 
function GetDynamicTextBox(value) { 
 
    return '<input name = "package_name_'+ value +'" readonly type="text" value = "' + value + '" />&nbsp;' + 
 
    '<input name = "package_price_'+ value +'" type="text" value = "" />&nbsp;'+ 
 
    '<input type="button" value="Remove" class="remove" />' 
 
}
<script src="https://code.jquery.com/jquery-1.12.1.min.js"></script> 
 

 
<select id="choose_package" > 
 
    <option value="Sliver"> Sliver</option> 
 
    <option value="Gold"> Gold</option> 
 
    <option value="Broze"> Broze</option> 
 
    <option value="Limited"> Limited</option> 
 
</select> 
 
<div class="package_limit"> 
 
</div>

1

내가 아니라 여기에 쿼리를 이해한다면이 솔루션 https://jsfiddle.net/abhiyx/w7xfzdus/16/

찾아주세요 내 코드

  <select id="choose_package" > 
        <option value="Sliver"> Sliver</option> 
        <option value="Gold"> Gold</option> 
        <option value="Broze"> Broze</option> 
        <option value="Limited"> Limited</option> 
      </select> 
      <div class="package_limit"> 
      </div> 

및 JQuery와 일부

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
      <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
    <script type="text/javascript"> 
      $(function() { 
     $("#choose_package").on("change", function() { 
      var selectval=$("#choose_package").val(); 
      var div = $("<div />"); 
        div.html(GetDynamicTextBox(selectval)); 
      $("#choose_package option[value='"+selectval +"']").remove(); 
        $(".package_limit").append(div); 
       }); 
       $("body").on("click", ".remove", function() { 
     $("#choose_package").append('<option value="'+ this.id+'">'+this.id+'</option>'); 
        $(this).closest("div").remove(); 
       }); 
      }); 
     function GetDynamicTextBox(value) { 
       return '<input name = "package_name_'+ value +'" readonly type="text" value = "' + value + '" />&nbsp;' + 
         '<input name = "package_price_'+ value +'" type="text" value = "" />&nbsp;'+ 
         '<input type="button" id= "'+ value+'" value="Remove" class="remove" />' 
      } 
      </script> 
+0

그러나 첫 번째 옵션은 절대로 추가 할 수 없다. 그것도 작동한다면 그것은 위대 할 것입니다. –

+0

을 추가 할 수있는 방법이 있습니다. – abhi

1

HTML 부분

<select id="choose_package" > 
    <option value="None">-- Select --</option> 
    <option value="Sliver"> Sliver</option> 
    <option value="Gold"> Gold</option> 
    <option value="Broze"> Broze</option> 
    <option value="Limited"> Limited</option> 
</select> 
<div class="package_limit"></div> 

JQuery와 부

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
      <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
    <script type="text/javascript"> 
      $(function() { 
     $("#choose_package").on("change", function() {   
      var selectval=$(this).find('option:selected').val(); 
      var div = $("<div />"); 
        div.html(GetDynamicTextBox(selectval));    
      $("#choose_package option[value='"+selectval +"']").attr("disabled", true); 
        $(".package_limit").append(div); 
      $(this).val('None'); 
       }); 
       $("body").on("click", ".remove", function() {   
     $("#choose_package option[value='"+ this.id+"']").attr("disabled", false); 
        $(this).closest("div").remove(); 
       }); 
      }); 
     function GetDynamicTextBox(value) { 
       return '<input name = "package_name_'+ value +'" readonly type="text" value = "' + value + '" />&nbsp;' + 
         '<input name = "package_price_'+ value +'" type="text" value = "" />&nbsp;'+ 
         '<input type="button" id= "'+ value+'" value="Remove" class="remove" />' 
      } 
      </script> 
관련 문제