使用Href Javascript调用更改隐藏输入


Changing Hidden input with Href Javascript call

我正在编写一个页面,从用户输入的url中获取图像,并使用ajax使用img src更新div,以便由fancybox在模式窗口中显示。显示的图像的标题显示在下面,作为链接。这是用fancybox完成的(如果您将标题设置为set,title="something"将在图像下方显示"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>";

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

使用$('.fancybody').live('click', function() { });live可以监听动态添加到DOM中的元素上的事件。