testman
홈
태그
방명록
programing
선택을 취소하는 가장 좋은 방법선택을 취소하는 가장 좋은 방법선택을 취소하는 가장 좋은 방법
testmans
2023. 8. 18. 21:01
반응형
선택을 취소하는 가장 좋은 방법
in jQuery?jQuery에서? <select size="2"> <사이즈 선택="2"><option selected="selected"<옵션 선택됨="선택됨">Input your option</option> >옵션 입력 </옵션><option><옵션>Input your option</option> 옵션을 입력하십시오.</select> </select> What is the best way, using jQuery, to elegantly unselect the option?jQuery를 사용하여 우아하게 옵션을 선택 취소하는 가장 좋은 방법은 무엇입니까?Use removeAttr...특성 제거 사용... $("option:selected").removeAttr("selected"); $("옵션: 선택됨").removeAttr("선택됨"); Or Prop 또는 프롭$("option:selected").prop("selected", false)$("option:selected").prop("선택됨"), false) There are lots of answers here but unfortunately all of them are quite old and therefore rely on attr/removeAttr which is really not the way to go.여기에는 많은 답이 있지만 안타깝게도 모두 상당히 오래된 답이기 때문에 tract/removeAttr에 의존합니다. 이는 실제로는 방법이 아닙니다. @coffeeyesplease correctly mentions that a good, cross-browser solution is to use @https://field포탈.//field포탈.//field포탈.//field포탈.//$("select").val([]); $("선택").val([]); Another good cross-browser solution is 또 다른 좋은 크로스 브라우저 솔루션은// Note the use of .prop instead of .attr .attr 대신 .prop를 사용합니다.$("select option").prop("selected", false);$("선택 옵션").prop("선택됨"), false); You can see it run a self-test here.여기서 자가 테스트를 실행하는 것을 볼 수 있습니다. Tested on IE 7/8/9, FF 11, Chrome 19.IE 7/8/9, FF 11, Chrome 19에서 테스트됨.Simplest Method 가장 간단한 방법$('select').val('') $('select').val(')I simply used this on the select itself and it did the trick.저는 이것을 선택 자체에 사용했고 그것은 효과가 있었습니다. I'm on jQuery 1.7.1.저는 jQuery 1.7.1에 있습니다.It's a been a while since asked, and I haven't tested this on older browsers but it seems to me a much simpler answer is 질문을 받은 지 오래되었고, 이전 브라우저에서 이것을 테스트하지 않았지만 훨씬 더 간단한 대답은 다음과 같습니다.$("#selectID").val([]); $("#selectID").val([]); .val() works for select as well http://api.jquery.com/val/Answers so far only work for multiple selects in IE6/7; for the more common non-multi select, you need to use: .val()은 select(http://api.jquery.com/val/Answers 에서도 작동하지만, 지금까지는 IE6/7의 다중 선택에서만 작동합니다. 일반적인 비다중 선택의 경우 다음을 사용해야 합니다.$("#selectID").attr('selected$("#selectID").tr('선택됨')Index', '-1');색인', '-1'; This is explained in the post linked by flyfishr64.이것은 flyfishr64에 의해 링크된 게시물에 설명되어 있습니다. If you look at it, you will see how there are 2 cases - multi / non-multi.보시면 멀티/비멀티 두 가지 경우가 있는 것을 보실 수 있습니다. There is nothing stopping you chaning both for a complete solution: 완벽한 솔루션을 위해 두 가지를 모두 변경하는 것을 막을 수 있는 것은 없습니다.$("#selectID").attr('selected$("#selectID").tr('선택됨')Index', '-1').find("option:selected").removeAttr("selected");인덱스', '-1').find("옵션: 선택됨").removeAttr("선택됨"); Oh jquery.오, 재쿼리. Since there is yet a native javascript approach, I feel the need to provide one.아직 네이티브 자바스크립트 접근법이 없기 때문에 제공할 필요성을 느낍니다. var select = document.var select = document.querySelector('select'); //hopefully you'll use a better selector query querySelector('select'); //더 나은 선택기 쿼리를 사용하기를 바랍니다.select.선택한다.selected선택된Index = 0; // or -1, 0 sets it to first option, -1 selects no options 색인 = 0; // 또는 -1, 0은 첫 번째 옵션으로 설정, -1은 옵션을 선택하지 않음 And just to show you how much faster this is: benchmark$("#select얼마나 더 빠른지 보여드리기 위해 벤치마크 $("#selectID option:selected").each(function(){ ID 옵션: 선택됨"). 각(function(){ $(this).$(이것)removeAttr("selected");removeAttr("선택됨"); }); }); This would iterate through each item and unselect only the ones which are checkedA quick google found this post that describes how to do what you want for both single and multiple select lists in IE.이렇게 하면 각 항목을 반복하고 선택된 항목만 선택 취소 IE에서 단일 및 다중 선택 목록에 대해 원하는 작업을 수행하는 방법을 설명하는 이 게시물을 빠른 구글에서 찾았습니다. The solution seems pretty elegant as well: 솔루션도 매우 우아해 보입니다.$('#clickme').click(function() { $('#click me'). 클릭(함수: {) $('#selectmenu option').attr('selected', false); $('#selectmenu option'), 특성(선택됨', false); }); });$("#select_id option:selected").prop("selected", false);$("#select_id 옵션:selected").prop("selected", false); Another simple way: 또 다른 간단한 방법:$("#selected$("#선택됨ID")[0].ID")[0].selected선택된Index = -1$(option).색인 = -1$(옵션).removeAttr('selected') //replace 'option' with selected option's selector removeAttr('selected') //'option'을 선택한 옵션의 선택기로 바꿉니다.Thanks a lot for the solution.해결해 주셔서 감사합니다. The solution for single choice combo list works perfectly.단일 선택 콤보 목록에 대한 솔루션은 완벽하게 작동합니다. I found this after searching on many sites. 저는 이것을 많은 사이트에서 검색한 후에 찾았습니다.$("#selectID").attr('selected$("#selectID").tr('선택됨')Index', '-1').children("option:selected").removeAttr("selected"); 색인', '-1'). 하위 항목("옵션: 선택됨"). 특성 제거("선택됨");$("option:selected").attr("selected", false);$("옵션: 선택됨").특성("선택됨", false); Usually when I use a select menu, each option has a value associated with it.일반적으로 선택 메뉴를 사용할 때 각 옵션에는 관련된 값이 있습니다. For example 예를들면<select id="nfl"> <select id="message"> <option value="Bears Still...<옵션 값="베어스는 여전히...">Chicago Bears</option> ">시카고 베어스 </옵션> <option selected="selected" value="Go Pack">Green Bay Packers</option> <option selected="selected" value="Go Pack">그린베이패커스</option></select> </select>console.log($('#nfl').val()) logs "Go Pack" to the console console.log($('#nfl').val()은 콘솔에 "Go Pack"을 기록합니다.Set the value to an empty string $('#nfl').val("") 값을 빈 문자열 $('#nfl').val("")로 설정합니다.console.log($('#nfl').val()) logs "" to the console console.log('#").val")에서 ""를 콘솔에 기록합니다. Now this doesn't remove the selected attribute from the option but all I really want is the value.이제 선택한 특성이 옵션에서 제거되지는 않지만 제가 정말 원하는 것은 값입니다. Set a id in your select, like: <select id="foo" size="2"> 선택 항목에 <select id="foo" size="2">와 같은 지원을 설정합니다.Then you can use: $("#foo").prop("selected그러면 $("#foo").prop("선택됨")를 사용할 수 있습니다.Index", 0).change();색인", 0).변경();This code works for me. 이 코드는 저에게 효과가 있습니다.$("option:selected").prop("selected", false);$("옵션: 선택됨").prop("선택됨"), false); Reference언급URL : https://stackoverflow.com/questions/1857781/best-way-to-unselect-a-select-in-jqueryURL : https://stackoverflow.com/questions/1857781/best-way-to-unselect-a-select-in-jquery
반응형
공유하기
게시글 관리
testman
'
programing
' 카테고리의 다른 글
각 개체에 대해 다음 항목으로 이동
(0)
2023.08.18
Swift를 사용하는 문자열의 하위 문자열 인덱스
(0)
2023.08.18
"col-xs-*"이 Bootstrap 4에서 작동하지 않음
(0)
2023.08.18
SmtpClient를 사용하여 C#을 통해 HTML 전자 메일 보내기
(0)
2023.08.18
MySQL JSON_MERGE / REPLACE.값을 실제로 업데이트하고 병합하지 않는 방법
(0)
2023.08.13
티스토리툴바