1

隠された入力フィールドにどのように価値を追加できますか?この場合、入力は変数として作成され、後者は必要に応じてDOMに挿入されます。コード:

<script>
    var forma = $('form#mali_oglas'),
    pomoc = $('div[role=pomoc]'),
    div = $('.mali_oglas_pomoc'),
    input = forma.find('input, textarea'),
    code = forma.find('#code')
    time_input = '<input type="hidden" name="time" />',
    paid_input = '<input type="hidden" name="paid" value="1" />';

    $('textarea').autosize();

    input.on('click', function(e){
        var name = $(':input:focus').attr("name");
        pomoc.fadeOut('slow').promise().done( function(){
         div.find("[data-pomoc='" + name + "']").fadeIn('slow');
     });
    });


    code.on('focusout', function(){
        var url = '<?php echo base_url() ?>global_info/gi_get_payment_code',
        kod = $(this).val();
if ($('input[name=paid]').length != 1)
    {
        $.post(url, {code : kod}, function(data){
            console.log(kod);
            $('.mali_oglas_img_paid').slideDown('slow');
            code.next('.mali_oglas_greska').remove();
            code.after(time_input.val(data) + paid_input)
            .css({'border' : '1px solid rgba(34,139,34,.5)'});
        });
    };
    });

    code.ajaxError(function() {
  $(this).next('.mali_oglas_greska').remove();
  $(this).after('<p class=mali_oglas_greska>Uneti kod je pogresan.</p>').css({'border' : '1px solid rgba(255,0,0,.5)'});
});
</script>
4

3 に答える 3

2

val文字列のメソッドを呼び出しています。最初にjQueryオブジェクトを作成し、次のように変更する必要があります。

time_input.val(data)

に:

$(time_input).val(data)

オブジェクトを文字列と連結することはできないことに注意してください。afterメソッドを2回呼び出すか、メソッドを使用する必要がありますadd

于 2012-11-17T20:57:26.103 に答える
1

単なるhtml文字列である変数でjQueryメソッドを使用しようとしています

変数を、それをラップするjQueryオブジェクト要素に変換できます。$()

1つがオブジェクトになると、2つの入力を連結できないため、挿入を逆にする必要があります。

code.after( paid_input).after( $(time_input).val(data) )
/* should place "time_input" before "paid_input"
于 2012-11-17T21:00:54.660 に答える
0

time_inputpaid_inputjQueryオブジェクトではなく文字列です。代わりにこれを試してください

time_input = $('<input type="hidden" name="time" />'),
paid_input = $('<input type="hidden" name="paid" value="1" />');
于 2012-11-17T20:59:58.813 に答える