[javascript] jQuery로 요소의 ID 변경

jQuery를 사용하여 요소의 ID를 변경해야합니다.

분명히 이들은 작동하지 않습니다.

jQuery(this).prev("li").attr("id")="newid"
jQuery(this).prev("li")="newid"

나는 다음 코드로 그렇게 할 수 있음을 발견했다.

jQuery(this).prev("li")show(function() {
    this.id="newid";
});

그러나 그것은 나에게 옳지 않은 것 같습니다. 더 좋은 방법이 있어야합니까? 또한없는 경우 표시 / 숨기기 또는 다른 효과 대신 사용할 수있는 다른 방법은 무엇입니까? 분명히 ID를 변경하기 위해 매번 요소를 표시하거나 숨기거나 영향을주고 싶지 않습니다.

(예, 저는 jQuery 초보자입니다.)

편집
이 경우에는 클래스를 사용할 수 없습니다. ID를 사용해야합니다.



답변

구문이 잘못되었으므로 값을 두 번째 매개 변수로 전달해야합니다.

jQuery(this).prev("li").attr("id","newId");


답변

선호하는 옵션 .attr.prop다음과 같이 사용하는 것입니다.

$(this).prev('li').prop('id', 'newId');

.attr요소의 속성을 .prop검색 하지만 속성이 참조하는 속성 (예 : 실제로 수정하려는 속성)을 검색합니다.


답변

당신이 의미하는 것은 :

jQuery(this).prev("li").attr("id", "newID");

ID를 새 ID로 설정합니다


답변

나는이 구성과 비슷한 것을했다

$('li').each(function(){
  if(this.id){
    this.id = this.id+"something";
  }
});


답변

목표가 무엇인지 잘 모르겠지만 대신 addClass를 사용하는 것이 더 좋을까요? 내 생각에 객체 ID는 정적이며 해당 객체에 고유해야합니다. 페이지에 표시되지 않도록 변경하려고하면 해당 세부 정보를 클래스에 넣은 다음 ID를 변경하려고하는 대신 객체에 추가합니다. 다시, 나는 당신의 밑줄 목표를 이해하지 않고 말하고 있습니다.


답변

$("#LeNomDeMaBaliseID").prop('id', 'LeNouveauNomDeMaBaliseID');


답변

<script>
       $(document).ready(function () {
           $('select').attr("id", "newId"); //direct descendant of a
       });
</script>

이것은 모든 목적을 위해 할 수 있습니다. 본문 닫기 태그 앞에 추가하고 Jquery.min.js 를 추가하지 마십시오.