【问题标题】:Changing Hidden input with Href Javascript call使用 Href Javascript 调用更改隐藏输入
【发布时间】:2012-07-14 12:10:35
【问题描述】:

我正在编写一个页面,该页面从用户输入的 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>";

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

【问题讨论】:

    标签: php javascript ajax href hidden


    【解决方案1】:

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

    【讨论】:

    • 所以,如果我使用$('.fancybox').live('click', function() { });,我需要能够在函数中使用动态url。如何才能做到这一点?所以,我需要这样的东西:$('.fancybox').live('click', function(recURL) { $('#recipeurl').val('recipeurl');document.recipeform.submit(); });我假设每次点击带有fancybox类的链接时都会调用代码,我只是不知道如何跟踪具体点击了哪个链接。
    • 我明白了。我使用了你的代码,但做了一些修改以适应我自己的$('.recTitle').live('click', function(){ var rURL = $(this).attr('rel'); document.getElementById("recURL").value = rURL; $.fancybox.close( true ); });
    • @StevenJohnson 抱歉,我错过了您的第一个回复。还请注意,我拼写了 fancybox 错误,哎呀。很高兴你解决了!
    猜你喜欢
    • 1970-01-01
    • 2018-03-09
    • 1970-01-01
    • 2014-12-24
    • 2012-09-16
    • 2016-11-05
    • 1970-01-01
    • 2015-11-02
    • 1970-01-01
    相关资源
    最近更新 更多