Reputation: 169
I have a button as follows:
<a href="#" onclick="AddRow();return false;" class="btnA">ADD</a>
Once I click the button, it adds a row to a #dataList1. Then I want it to be hidden. And I did following in Javascript;
<script type="text/javascript">
function AddRow(){
var tr = '<tr>';
tr += '<td></td>';
tr += '<td><span class="br"><input type="text" id="grpNm" name="grpNm" value="" style="width:96%"/></span></td>';
tr += '<td><span class="br"><input type="text" id="grpExp" name="grpExp" value="" style="width:96%"/></span></td>';
tr += '</tr>';
$('#dataList1').append(tr);
};
$('#AddRow').on('click', function(){
$('#AddRow').hide();
});
</script>
It adds the row, but after it, it does not hide the button. Where did I do wrong?
Upvotes: 0
Views: 111
Reputation: 672
Add id to input
HTML
<a href="#" onclick="AddRow();return false;" class="btnA" id="AddRow">ADD</a>
<div id="dataList1"></div>
And hide button after appending in AddRow function.
JS
function AddRow(){
var tr = '<tr>';
tr += '<td></td>';
tr += '<td><span class="br"><input type="text" id="grpNm" name="grpNm" value="" style="width:96%"/></span></td>';
tr += '<td><span class="br"><input type="text" id="grpExp" name="grpExp" value="" style="width:96%"/></span></td>';
tr += '</tr>';
$('#dataList1').append(tr);
$("#AddRow").hide();
}
Upvotes: 2
Reputation: 10553
Because there is no control with the id AddRow
. You have to either give id or use class sector $('.btnA').hide();
<script>
function AddRow(){
var tr = '<tr>';
tr += '<td></td>';
tr += '<td><span class="br"><input type="text" id="grpNm" name="grpNm" value="" style="width:96%"/></span></td>';
tr += '<td><span class="br"><input type="text" id="grpExp" name="grpExp" value="" style="width:96%"/></span></td>';
tr += '</tr>';
$('#dataList1').append(tr);
$('.btnA').hide();
</script>
Upvotes: 1
Reputation: 1534
Three Steps Problems:
1) Add this code inside AddRow() function:
$('#AddRow').hide();
2) Remove This event:
$('#AddRow').on('click', function(){
3) Add id AddRow in
<a href="#" onclick="AddRow();return false;" class="btnA">ADD</a>
Upvotes: 0
Reputation: 8840
You can hide the button in AddRow()
function itself:
function AddRow(){
var tr = '<tr>';
tr += '<td></td>';
tr += '<td><span class="br"><input type="text" id="grpNm" name="grpNm" value="" style="width:96%"/></span></td>';
tr += '<td><span class="br"><input type="text" id="grpExp" name="grpExp" value="" style="width:96%"/></span></td>';
tr += '</tr>';
$('#dataList1').append(tr);
$('.btnA').hide();
};
Upvotes: 0