테스트 사이트 - 개발 중인 베타 버전입니다

고수님들 &option= 이것을 지우고싶어요 채택완료

나딘플러스 2년 전 조회 2,201

아래 라디오버튼을 누르면 기존 주소 끝에 A, B, C, 주소가 뭍는데 &option= 이것도 따라 붙습니다.

기존주소를 건드리지말고 끝에 A, B, C, 이것만 붙을 수 는 없나요?

 

</strong>

<input type="radio" name="option" value="A" id="optionA" <?php if ($selectedOption === "A") echo "checked"; ?>>

<label for="optionA">A</label>

<input type="radio" name="option" value="B" id="optionB" <?php if ($selectedOption === "B") echo "checked"; ?>>

<label for="optionB">B</label>

<input type="radio" name="option" value="C" id="optionC" <?php if ($selectedOption === "C") echo "checked"; ?>>

<label for="optionC">C</label></p>

<p><script>

  const options = document.getElementsByName("option");

  options.forEach(function(option) {

    option.addEventListener("change", function() {

      const selectedValue = this.value;

      if (selectedValue !== "") {

        const baseUrl = window.location.href.split("?")[0];

        const searchParams = new URLSearchParams(window.location.search);

        searchParams.set("option", selectedValue);

        const newUrl = baseUrl + "?" + searchParams.toString();

        window.location.href = newUrl;

      }

    });

  });

</script></p>

<p><strong>

댓글을 작성하려면 로그인이 필요합니다.

답변 5개

채택된 답변
+20 포인트

작업하시는 페이지가 어디인가요?

option.addEventListener("change", 

  change보다는 click이 나아 보입니다.

현재 페이지를 알면

window.location.href를

Php로 지정하고 끝에 A~C만 붙여 줄 수 있습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

2년 전

</p>

<p><?php

$selectedOption = isset($_REQUEST['stx']) == true ? $_REQUEST['stx'] : '';

?> 

<input type="radio" name="option" value="A" id="optionA" <?php if ($selectedOption === "A") echo "checked"; ?>>

<label for="optionA">A</label>

<input type="radio" name="option" value="B" id="optionB" <?php if ($selectedOption === "B") echo "checked"; ?>>

<label for="optionB">B</label>

<input type="radio" name="option" value="C" id="optionC" <?php if ($selectedOption === "C") echo "checked"; ?>>

<label for="optionC">C</label>

<script>

  const options = document.getElementsByName("option");

  options.forEach(function(option) {

    option.addEventListener("change", function() {

      const selectedValue = this.value;

      if (selectedValue !== "") {

        const baseUrl = window.location.href.split("?")[0];

        const searchParams = new URLSearchParams(window.location.search);

        // searchParams.set("option", selectedValue);

        searchParams.set("stx", selectedValue);

        const newUrl = baseUrl + "?" + searchParams.toString();

        window.location.href = newUrl;

      }

    });

  });

</script></p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

2년 전

주소에 stx= <=== 이게 마지막 나오는 것이 맞다면 script내용 모두 삭제하고 다음 코드만 넣으세요

 

location.href = location.href +$('input[name=option]:checked').val();

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

M
2년 전

</p>

<p>

<input type="radio" name="option" value="A" id="optionA" >

<label for="optionA">A</label>

<input type="radio" name="option" value="B" id="optionB">

<label for="optionB">B</label>

<input type="radio" name="option" value="C" id="optionC">

<label for="optionC">C</label>

<script>

  const options = document.getElementsByName("option");

  options.forEach(function(option) {

    option.addEventListener("change", function() {

      const selectedValue = this.value;

      if (selectedValue !== "") {

        const baseUrl = window.location.href.split("?")[0];

        const searchParams = new URLSearchParams(window.location.search);

        const newUrl = baseUrl + "?" + searchParams.toString()+selectedValue.toString();

        window.location.href = newUrl;

      }

    });

  });

</script></p>

<p>

으로 하시면 됩니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

M
2년 전

</p>

<p><input type="radio" name="option" value="A" id="optionA" >

<label for="optionA">A</label>

<input type="radio" name="option" value="B" id="optionB">

<label for="optionB">B</label>

<input type="radio" name="option" value="C" id="optionC">

<label for="optionC">C</label>

<script>

  const options = document.getElementsByName("option");

  options.forEach(function(option) {

    option.addEventListener("change", function() {

      const selectedValue = this.value;

      if (selectedValue !== "") {

        const baseUrl = window.location.href.split("?")[0];

        const searchParams = new URLSearchParams(window.location.search);

        const newUrl = baseUrl + "?" + selectedValue.toString();

        window.location.href = newUrl;

      }

    });

  });

</script></p>

<p>

이렇게 하시면 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

나딘플러스
2년 전
/bbs/board.php?bo_table=2000&sca=&sop=and&sfl=wr_25&stx=

wr_25&stx= 여기 에 붙으면되요

wr_25&stx=A

wr_25&stx=B

wr_25&stx=C 이런식이요

위에 소스로하니

bbs/board.php?A

bbs/board.php?B

이런식으로 됩니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인