2011-04-25 6 views
0

버튼을 클릭 할 때 입력 요소의 이름 속성을 변경하는 문제가 있습니다.
이 *
세입자 *이 입력 요소입니다
* 업데이트 고객버튼 클릭 기능으로 확인란 입력 이름 변경

고객에게 추가 삭제 :

<input type=\"checkbox\" name=\"todelete[]\" value=\"$busRow[0]\" class=\"check\" />

$ busRow는 사용자의 ID입니다

나는 3 개 버튼이있다.

양식을 보려면 확인하는 PHP 스크립트를 제출하십시오. 어떤 버튼이 설정되었으며 해당 버튼에 대해 다른 작업을 수행합니다. 사용자가 삭제를 클릭하면 루프가 완료되고 todelete[] 배열에있는 각 고객이 삭제됩니다. 사용자가 "고객 업데이트"버튼을 클릭하면 확인란의 입력 이름을 "id"로 변경하려고합니다. 그런 다음 내 PHP 스크립트는 배열 값을 가져 오는 대신 사용자의 ID를 가져온 다음 URL에 저장된 ID로 고객 업데이트 페이지로 사용자를 리디렉션합니다.

내가 페이지 하단에 사용하고 자바 스크립트입니다 : 내가 업데이트 고객 페이지에 도착하면

<script type="text/javascript"> 
    $("button").click(function() { 
     if ($(this).text() == "Update Customer") { 
      $('input.check').attr("name", "id"); 
     } 
    }); 
</script> 

ID가 URL에 존재하지 않고 내가 어떤 값을 당기지 수 아이디 :(

+0

리디렉션 코드를 제공 할 수 있습니까? –

답변

1

value에 저장된 값 대신 이름 값을 "id"로 설정합니다. 이 시도 : 비록

$("button").click(function() { 

    if ($(this).text() == "Update Customer") { 
     var element = $('input.check'); 
     element.attr("name", element.attr("value")); 
    } 
}); 

을, 당신이 단지 클릭 한 BTN이 '업데이트'는 대신 name의 입력 태그의 value을 전달할 수 있다고 생각. 그러면 이러한 여러 속성을 변경하는 번거 로움을 덜어주고 문제를 줄일 수 있습니다.

편집 : OP를 다시 읽고 "id"가 아닌 사용자 ID로 이름을 설정 하시겠습니까? 당신은 애매 모호하고 당신이하려는 것을 이해하기가 어렵습니다. 이 "id"를 잡아서 사용자를 리다이렉트하는 중요한 코드를 남기고 있습니다.

편집 2 : 문자열 연결부 사이의 세미콜론은 무엇입니까? 나는 그것이 당신의 소스 코드에 없길 바랍니다. 이제 리디렉션 코드가 표시됩니다. 귀하의 문제는 'input.check'선택기를 사용하여 태그의 속성/값을 변경하려는 것입니다. 나는 또한 당신이 이것을 구현하는 방식을 재 설계해야한다고 말하고 싶다. 체크 박스에 사용자 정보가 들어 있어서는 안됩니다.하지만 상관없이 name 값을 변경해야한다고 생각하지 않습니다. update isset() then $id = (its current name value);
자바 스크립트 코드를 디버그하려면 방화 광을 다운로드하십시오. 또한 방화범이 끌리지 않는 코드에서 오류를 표시합니다. 그것은 당신을 많이 도와야합니다

+0

나는 이것을 시도하고 여전히 내 PHP 스크립트에서 ID를 잡아하지 않았다. – awesomesyntax

+0

고맙습니다. – awesomesyntax

1

가 실제로 진정한되는 경우 원인 일 수 있습니다 무엇을 좁힐 확인하기 위해 if 문 내부에 경고를 넣어보십시오에 따라. 또한

나는 input.check 사용되지 본 적 없어요 아마 버튼에 이드에게 다음과 같이하십시오 :

<input id=\"customercheck\" type=\"checkbox\" name=\"todelete[]\" value=\"$busRow[0]\" class=\"check\" /> 

는 다음과 같이 ID를 통해 속성을 변경 : 당신이 도로 아래로 나중에 필드에 다른 입력을 추가하는 경우 또한 당신을 절약 할 수

$('#customercheck').attr("name", "id"); 

합니다.

+0

필자가 동의하기 때문에 입력 태그에 ID가 있어야 삶이 편해집니다 –

+0

왜 '\'문자를 사용합니까? – enam

+0

OP가 수행했기 때문에 이스케이프 만 사용했습니다 (PHP echo 문을 복사했다고 가정합니다). 해당 코드를 HTML 페이지에 추가하는 경우에는 필요하지 않습니다. – Tim