나는 여러 개의 확인란이 있습니다. 나는 그것들로부터 가치를 얻고 그것을 범위와 숨겨진 입력에 전달하고자한다. 하나의 확인란을 클릭하면 제대로 작동합니다. 그러나 하나 이상의 체크 박스를 클릭하면 마지막 값만 전달됩니다. 뭐가 문제 야? 그걸 도와주세요. 그리고 다른 질문입니다. 여러 값을 저장하기 위해 input 또는 textarea를 사용하는 것이 적절합니까? jQuery가지도 함수에서 입력 및 범위로 데이터를 전달합니다.
1
A
답변
1
당신이 .html()
방법을 사용
function t() {
$('input[type="checkbox"]:checked').map(function(){
var dataAttr = $(this).attr('name');
var dataAttrVal = $(this).val();
$('input[name="' + dataAttr + '-value"]').val(dataAttrVal);
$('#summary_' + dataAttr).html(dataAttrVal);
console.log(dataAttr);
console.log(dataAttrVal);
}).get().join();
};
$('input[type="checkbox"]').on('click', function(){
t();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" name="sause" id="sause-garlic" value="Sos czosnkowy" class="sause">
<label for="sause-garlic">garlic</label>
<input type="checkbox" name="sause" id="sause-tabasco" value="Sos tabasco" class="sause">
<label for="sause-tabasco">tabasco</label>
<br>
<input type="checkbox" name="vegies" id="vegies-tomato" value="Tomato" class="vegies">
<label for="vegies-tomato">tomato</label>
<input type="checkbox" name="vegies" id="vegies-tomato" value="potato" class="vegies">
<label for="vegies-tomato">potato</label>
<input type="text" name="sause-value">
<input type="text" name="vegies-value">
<span id="summary_sause" class="summary"></span>
<span id="summary_vegies" class="summary"></span>
$('#summary_' + dataAttr).append(dataAttrVal);
이 대답 질문에 : 당신은 기존 값에 추가 할 .append()
방법을 사용할 수 있습니다, 또는
var s = $('#summary_' + dataAttr);
s.html(s.html() + dataAttrVal);
:
$('#summary_' + dataAttr).html(dataAttrVal);
으로 : 당신은 라인을 대체 할 수 하지만 코드에서 수정할 필요가있는 다른 많은 문제가 있습니다. 나는 너를 너 자신에 의해 탐구하게하고, 너가 어려움에 직면하면, 새로운 대답을 게시하고 우리는 너를 도울 것이다.
두 번째 질문은 여러 값을 저장하는 데 input 또는 textarea를 사용하는 것이 적절합니까? 일반적으로 좋은 생각은 아니지만 일부 시나리오에서는 괜찮을 수 있습니다. 좋은 조언을하기 위해 정확한 시나리오와 요구 사항을 알아야합니다.
관련 문제
- 1. 함수에서 각도 컨트롤러 범위로 데이터를 전달하는 방법
- 2. JQuery가지도 창에 추가
- 3. AngularJS - 입력 범위를 다른 범위로 입력
- 4. 클릭시 입력 범위로 변환
- 5. $ state.params 및 $ stateParams가 데이터를 전달합니다.
- 6. GNUPLot : 데이터를 특정 범위로 스케일 및 플롯
- 7. 함수에서 배열을 매개 변수로 전달합니다.
- 8. 함수에서 참조로 빈 개체를 전달합니다.
- 9. 내부 함수에서 외부 범위로 변수를 조정하십시오.
- 10. 중첩 함수에서 전역 범위로 변수 반환
- 11. 컨트롤러에서 컨트롤러로 데이터를 전달합니다.
- 12. np.dnarray의 데이터를 Highcharts로 전달합니다.
- 13. 범위로 데이터를 그룹화하여 히스토그램 만들기
- 14. 스레드에서 데이터를 작업으로 전달합니다.
- 15. 대상보기 컨트롤러에 데이터를 전달합니다.
- 16. 페이지간에 데이터를 올바르게 전달합니다.
- 17. Python에서 입력 범위로 사용자 가져 오기
- 18. VB.NET은 양식간에 데이터를 전달합니다.
- 19. SugarCrm이 컨트롤러에서보기로 데이터를 전달합니다.
- 20. Angularjs가 데이터를 전달합니다.
- 21. codeigniter에서 컨트롤러의보기로 데이터를 전달합니다.
- 22. 안드로이드에서 액티비티의 데이터를 전달합니다.
- 23. Angular2는 모달로 데이터를 전달합니다.
- 24. Google지도의 UIWebView에서 데이터를 전달합니다.
- 25. 팝업에서 부모로 데이터를 전달합니다.
- 26. Xamarin 안드로이드는보기간에 데이터를 전달합니다.
- 27. WooCommerce가 woocommerce_checkout_update_user_meta로 데이터를 전달합니다.
- 28. 컨트롤러에서 ASP.NET으로 데이터를 전달합니다.
- 29. AVCaptureAudioDataOutput 데이터를 vDSP/Accelerate.framework에 전달합니다.
- 30. 함수에서 함수에서 데이터를 반환하는 방법
나는 어떤 종류의 체크 박스가있는 양식이 있습니다. 내 양식의 숨겨진 입력 값을 전달하고 양식을 전달합니다. 그리고 내 코드에서 어떤 문제점을 발견 했습니까? – MMPL1
내가 준 옵션 중 하나를 선택하고 코드를 업데이트 한 다음 실행하여 원하는대로 작동하는지 확인하십시오. 당신이 다른 방식으로 행동하기를 원하는 것을 발견하면, 그것들이 문제입니다. 문제를 해결하고 문제가있는 경우 새로운 질문에 게시하면 도움이됩니다. –
알겠습니다. 하지만 코드가 완벽하게 작동합니다! 아마도 수정해야 할 것이 하나 있는데, 데이터를 텍사 레아에게 넘겨 줄 수도 있지만, 나는 스스로 해결할 수 있다고 생각합니다. 고맙습니다. – MMPL1