2013-04-17 6 views
0

저는 사용자가 신용 카드 나 페이팔을 선택할 수있는 지불 양식을 만들고 있습니다. 디스플레이 기능에 문제가 있습니다. 각 요소에 대해 새 함수를 작성해야합니까? 이것은 내가 가지고있는 것입니다.소품을 어떻게 사용합니까? 클릭 한 요소에만 적용 할 수 있습니까?

<p>Billing Infomation</p> 
    First Name: <input name="Billing_F_name" type="text" size="15" 
    value="Enter First Name"/> &nbsp;Last Name: <input name="Billing_L_name" 
    type="text" size="20" value="Enter Last Name"/><br /> 

    Method of Payment:<br /> 
    Credit Card <input name="payment" id="p1" type="radio" onclick="javascript: 
    payment()"/><br /> 

    Paypal <input name="payment" id="p4" type="radio" 
    onclick="javascript:payment()"/><br /> 
<script language="javascript" > 
    function payment(click) 
{ 
    if(document.getElementById("p1"){ 
    $('input:radio[name="payment1"][value="P_1"]').prop('checked=checked', true); 

    document.write('<? $P_Method = 'P_1'; ?>'); 
    } 

    else if(document.getElementsById("p4")){ 
    $('input:radio[name="payment4"][value="P_4"]').prop('checked=checked', true);} 
    document.write('<? $P_Method = 'P_4'; ?>'); 
} 
    </script> 

BTW, 참조 용입니다. 설정중인 PHP 설정 변수는 PHP 스위치 메소드로 이동하여 각각의 요소를 표시하며, 현재 올바르게 작동합니다.

+0

를 사용할 필요가 없습니다 : 더'onclick', 더 '문서를. getElementById', 아니'document.write'. – moonwave99

답변

0

클릭 된 요소를 핸들러에 전달하여 사용하십시오. 당신이 좋은을 위해 사용, jQuery를 가져 오기 때문에

javascript:payment(this) 

.. PHP의 실행을위한

function payment(el) { 
    $(el).doSomething() 
} 
+0

남자, 그 불쾌한'javascript :'프로토콜을 제거하십시오. x : – Snuffleupagus

+0

@ Snuffleupagus 나는 개인적으로 onclick을 없앨 것입니다. –

0

당신은 AJAX

<script language="javascript"> 
function payment(dd) 
{ 

if(dd.id=="p1") 
    document.write("<? $P_Method = 'P_1'; ?>"); 

else if(dd.id=="p4") 
document.write("<? $P_Method = 'P_4'; ?>"); 

} 
</script> 
<p>Billing Infomation</p> 
First Name: <input name="Billing_F_name" size="15" value="Enter First Name" type="text"> 
&nbsp;Last Name: 
<input name="Billing_L_name" size="20" value="Enter Last Name" type="text"><br> 

Method of Payment:<br> 
Credit Card <input name="payment" id="p1" onclick="payment(this)" type="radio"><br> 

Paypal <input name="payment" id="p4" onclick="payment(this)" type="radio"><br>