0

我有附加表格的图像!当我更改表单中的某些值时,它会自动将 .post() 值发送到其他文件并更新数据库!我还可以选择添加新图像,然后为该(新)图像附加图像和新表单,但在我刷新页面之前,表单不会为该新图像添加 .post() 值.... HTML IS 100 % 正确的

var http_adr = "http://192.168.1.200/dev/";

function addPictures(what, where){
    AIM.start(what,{
        AppendData:{
            'parent':where
        },

        beforeComplete:function(){
        },

        onComplete:function(returnData){
            var jdata=$.parseJSON(returnData);
            for (var i=0; i<jdata.filename.length; i++){
                var html_var = '<div class="image_wrapper"><div class=""><img src="../../module/catalog/product_img/'+where+'/'+jdata.filename[i]+'_small.jpg" /></div><div class="details_div">';

                var html_var2 = '';

                for (var n=0; n<jdata.detail_table[i].length; n++){
                    html_var2 = html_var2 + '<form name="' + jdata.pdid[i] + '">' + jdata.detail_table[i][n] + '<input name="price" value="0.00" /><input name="stock" value="0" /></form>';
                }

                var html_done = html_var + html_var2 + '</div></div>';
                $('.box:visible').append($(html_done).hide().fadeIn(1500));
            }
        },

        UPtarget:http_adr+'plugins/upload/upload.php'
        });
    }

    var iloc = '../../module/catalog/_i.php';

    $(document).ready(function() {
        $('input').change(function() {
            var pdid = $(this).parent('form').attr("name");
            $.post(
                iloc,
                $(this).serialize() + '&pdid=' + pdid + '&a=edit_detail',
                function(data) {
                }
            );
        })
    })
4

1 回答 1

1

尝试:

$('body').on("change", "input", function() {

代替

$('input').change(function() {

因此,当您从 ajax 检索新输入时,事件会冒泡并被捕获和处理。

更新
还尝试更改以下行:

$('.box:visible').append($(html_done).hide().fadeIn(1500));

对于这个:

$('.box:visible').hide().append(html_done).fadeIn(1500);

因为您在 html 中隐藏和淡出尚未附加到 DOM。

于 2012-10-04T07:56:00.447 回答