1

抱歉,如果这是重复的;我研究了类似的问题,但无法得到任何工作(我对 PHP 和 JQuery 很陌生)。

到目前为止,我已经设置了这个函数,它可以像我希望的那样提取 id 和 tip 的值:

$(document).ready(function(){
    $('.tooltip').click(function(){
        var id      = $(this).attr('tooltip-id');
        var tip     = $(this).attr('data-tooltip');
        var target  = $('div#tooltip-modal');
        $.fancybox(target);

    });

这是相关的div:

<div id="tooltip-modal" style="display:none">
    <h2>Edit the description of this item:</h2>
    <form id="update-tooltip">
        <input type="hidden" id="id" value="id">
        Tooltip body: <textarea name="body" class="input">{{tip}}</textarea><br>
        <input type="submit" value="Update" id="update">
    </form>
</div>

我希望 tip 和 id 的值显示在它们各自的目的地中(id 是隐藏的,tip 应该是文本区域的主体,希望用户可以编辑)。我觉得这应该很简单,不是吗?我已经尝试了所有传递它的方法;我看到人们推荐了 AJAX,但我对此也很陌生,并且相当肯定我做错了(如果这甚至是正确的方法)。

我最终需要将修改后的提示文本保存到数据库中,但这是另一天的问题。但是,如果这会影响您的解决方案,现在您知道了。

4

1 回答 1

1

你可以改变这个:

    var id      = $(this).attr('tooltip-id');
    var tip     = $(this).attr('data-tooltip');

类似于(必要时可以缩短):

    var id      = $(this).attr('tooltip-id');
    var tip     = $(this).attr('data-tooltip');

    $("#id").val(id);
    // a bit longer as the textarea does not have an ID
    $("#tooltip-modal .input").val(tip);
于 2013-06-19T21:46:32.783 回答