开发者

Change a buttons value if parameters are met, jQuery, PHP, Sessions

I have the following button:

<input type="button" count='<?php echo count($_SESSION['children']);?>' name="children" class="add_child" value="Add Another Child"/>

On default when the form loads (with a clean session) there is no input for children, so the button should read "Add a Child".

If there is a text field present with the name children[] then it should just display: "Add another Child".

How would this be done ?

I am using php / jquery / sessions for the fields here is the c开发者_StackOverflow中文版ode for it:

   $('.add_child').click(function(){
    var attrName = $(this).attr('name');
    var count = $(this).attr('count');
    $(this).attr('count', (parseInt(count)+1))
    var input = $('<input />');
    input.attr('type','text')
    input.attr('name',attrName+"["+count+"]" ) 
    $('.children_form').append($('<li />').append(input));
    $('#content li:odd').addClass('alt');
})

<?php
    if(isset($_SESSION['children'])) {
    foreach($_SESSION['children'] as $index=>$child){ ?>

        <li>
        <?php echo "<input type='text' name='children[{$index}]' value='{$child}'/>";?>
        </li>

    <?php } }?>


Try this out with the code you have already:

$('.add_child').click(function(){
  //code...
  $(this).val('Add Another Child');

})

and the php for the input:

<input type="button" count='<?php echo count($_SESSION['children']);?>'
     name="children" class="add_child" 
     value="<?php echo (isset($_SESSION['children'])? 
        'Add Another Child':'Add a Child');?>"
/>
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜