0

我正在编写一个页面,该页面从用户输入的 url 中获取图像,并使用 ajax 更新一个带有 img src 的 div,以在模式窗口中由 fancybox 显示。显示的图像具有以下显示的标题,作为链接。这是用fancybox完成的(如果您将标题设置为设置,title="something"将在图像下方显示“某物”。如果您将标题设置为title="<a href='something.html'>Something</a>

我的问题是这个。我需要允许用户通过单击链接来选择图像,然后让它做两件事:用 img 的 src url 更新隐藏字段,然后提交表单。

这是我对 ajax 请求的代码:

    function getCustomerInfo() {
        var phone = document.getElementById("urls").value;
        var url = "grabimages.php?urls=" + escape(phone);
        request.open("GET", url, true);
        request.onreadystatechange = updatePage;
        request.send(null);
        $("#dvloader").show();
        $("#selectimages").hide();
        //$("#noimages").hide();

        function updatePage() {
        if (request.readyState == 4)
            if (request.status == 200){
                if(request.responseText == ''){
                    $("#dvloader").hide();
                    $("#noimages").show();
                }else{
                    document.getElementById("update-div").innerHTML = request.responseText;
                    $("#dvloader").hide();
                    $("#selectimages").show();
                    $(".fancybox")
                        .attr('rel', 'gallery')
                        .fancybox({
                            padding : 15
                        });
                    $('input[id=theimage]').click(function(){

                        $(".fancybox").eq(0).trigger('click');
                    }); 


                    function recURL(recipeurl) {

                        $('#recipeurl').val('recipeurl');
                        document.recipeform.submit();


                    }

                }
            }else{
                alert('nothing');
            }

        }

这是我为 href javascript 调用尝试的代码(这是服务器端代码,所以 PHP:

    echo "<a class=\"fancybox\" id=\"recipelinks\" title=\"<a href='#' onclick='javascript:recURL(" . $imagepath . ");'>Choose this Image</a>\" href=\"" . $imagepath . "\"><img src=\"" . $imagepath . "\" alt=\"\"/></a>";

这没有任何作用。有什么建议么?

4

1 回答 1

0

使用$('.fancybody').live('click', function() { });,live允许您侦听动态添加到的元素上的事件DOM

于 2012-07-15T09:36:15.737 回答