2017-08-07 3 views
0

このような私のHTMLコード:2つのラジオボタンのいずれかをクリックすると、テキストフィールドを追加してテキストフィールドを別のものに置き換える方法はありますか?

<input type="radio" name="pembayaran" id="tunai" value="tunai" onclick="pilihpembayaran()"/>Tunai 
<input type="radio" name="pembayaran" id="kredit" value="kredit" onclick="pilihpembayaran()" />Kredit 
<input type="text" name="pilihbayar" id="formtunai"readonly value="<?php echo $value->harga?>" style="display:none"/> 

そして、これは私のJavaScriptコードです:

function pilihpembayaran(){ 
    if (document.getElementById('tunai').click) { 
     $('#formtunai').show(); 
    } else if(document.getElementById('kredit').click){ 
     $('#formtunai').hide(); 
    } 
} 

しかし、私は別の要素を持つ要素#formtunaiを置き換えることはできません。

誰でも問題を解決できますか?

答えて

1

Htmlの

<input type="radio" name="pembayaran" id="tunai" value="tunai" 
onclick="pilihpembayaran(this)"/>Tunai 
<input type="radio" name="pembayaran" id="kredit" value="kredit" 
onclick="pilihpembayaran(this)" />Kredit 
<input type="text" name="pilihbayar" id="formtunai"readonly value="<?php echo 
$value->harga?>" style="display:none"/> 

Javascriptを

function pilihpembayaran(e){ 
    var name = $(e).attr('id'); 
    if(name == "kredit") { 
    $('#formtunai').hide(); 
    } else if(name == "tunai") { 
    $('#formtunai').show(); 
    } 
} 

は、そのあなたのお役に立てば幸い!

+0

ありがとう@Sarabh、あなたの答えは私の問題を解決しました。 – Rachmad

1

使用このコード:

function pilihpembayaran(){ 
 
    $("input:radio[id=tunai]").click(function(){ 
 
      $('#formtunai').show(); 
 
    }); 
 
    $("input:radio[id=kredit]").click(function(){ 
 
      $('#formtunai').hide(); 
 
    }); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="radio" name="pembayaran" id="tunai" value="tunai" onclick="pilihpembayaran()"/>Tunai 
 
<input type="radio" name="pembayaran" id="kredit" value="kredit" onclick="pilihpembayaran()" />Kredit 
 
<input type="text" name="pilihbayar" id="formtunai"readonly value="test" style="display:none"/>

+0

ユーザーがラジオボックスをクリックするたびにクリックイベントをバインドしないでください – Saurabh

+0

@ Chandra Kumarしかし、ラジオボタンの最初の部分をクリックすると、テキストフィールドが表示されませんでしたか? – Rachmad

0

はこれを試してみてください:

function pilihpembayaran(clickedElemId){ 
 
    $("form").hide(); // to hide all forms 
 
    $("#form"+clickedElemId).show(); //to show form based on clicked element id 
 
}
<input type="radio" name="pembayaran" id="tunai" value="tunai" onclick="pilihpembayaran(this.id)"/>Tunai 
 
    <input type="radio" name="pembayaran" id="kredit" value="kredit" onclick="pilihpembayaran(this.id)" />Kredit 
 
<input type="text" name="pilihbayar" id="formtunai"readonly value="<?php echo $value->harga?>" style="display:none"/>

関連する問題