0

非常に単純ですが、解決策がわかりません。

この Twitter ブートストラップ ポップアップ リンクに php var を配置するにはどうすればよいですか?

<a href="#myModal" title="Lees meer" value="12345" data-toggle="modal">Read More</a>

そして、ポップアップフィールドでこのリンクの値を取得して印刷するにはどうすればよいですか?

4

2 に答える 2

1

短いタグが有効になっている場合:

<a 
    href="#myModal" 
    title="Lees meer" 
    value="12345" 
    data-toggle="modal" 
    data-phpvar="<?=$myVariable?>"
>
    Read More
</a>

そうしないと:

<a 
    href="#myModal" 
    title="Lees meer" 
    value="12345" 
    data-toggle="modal" 
    data-phpvar="<?php echo $myVariable; ?>"
>
    Read More
</a>

どちらも読みやすさのためにインデントされています - 実際の HTML ではこれを行わないでください。

そして、jQuery で取得するには、次.data("variable")で始まる属性を自動的に取得しますdata-

$("a[href=#myModal]").click(function() {
    alert($(this).data("phpvar"));
});

または.attr同等のものを使用します:

$("a[href=#myModal]").click(function() {
    alert($(this).attr("data-phpvar"));
});

モーダルで出力するには:

$("a[href=#myModal]").click(function() {
    var phpVariable = $(this).attr("data-phpvar");
    var modalObject = $($(this).attr("href"));
    modalObject.find(".modal-body").text(phpVariable); //You might also use .html()
});

コードの動作の JSFiddle デモ

于 2013-01-21T09:26:19.183 に答える
0

ありがとうございます

短いタグを有効にして、次のリンクを作成します。

<a href="#myModal" 
   title="Bewerken" 
   role="button" 
   data-toggle="modal" 
   data-phpvar="<?php echo $value['i_id_pk'] . '||' . $value['c_user'] . '||'. $value['i_user_type_id_fk'];?>">
    <i class="icon-edit"></i>
</a>

data-phpvar の値を JQuery で #myModal ポップアップに送信します。OnClick イベントを使用して、a href data-phpvar から値を取得します。このような:

<script>
    $("a[href=#myModal]").click(function() {
        var str = $(this).attr("data-phpvar");
        var substr = str.split('||');

        $("[name=user_id]").val(substr[0]);
        $("[name=c_chance_user_name]").val(substr[1]);
        $("[name=validation_c_user]").val(substr[1]);
        $("[name=c_chance_user_type]").val(substr[2]);

        $("span.userName").text(substr[1]);
    });
</script>

それはうまくいきますが、JQueryのこの部分を短くするか、より良い方法で行うことはできますか?

最終的に、a href data-phpvar から値をポップアップ内のテキストフィールドに入れました。テキストフィールドには、JQuery 名と同じ名前を付ける必要があります。

$("[name=user_id]").val(substr[0]); または $("[name=c_chance_user_name]").val(substr 1 );

ポップアップの HTML テキストフィールドは次のようになります。

    <div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
        <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
            <h3 id="myModalLabel">Wijzig gebruiker "<span class="userName"></span>"</h3>
        </div>
        <div class="modal-body">
             <input class="span3" id="appendedPrependedInput" type="text" name="c_chance_user_name" value="" minlength="3" required />
             <input class="span3" type="text" data-validation-match-match="c_chance_user_name" name="validation_c_user" minlength="3" required />
        </div>
        <div class="modal-footer">
             <button class="btn" data-dismiss="modal" aria-hidden="true">Sluiten</button>
             <button class="btn btn-success" name="chanceBtn"><li class="icon-ok-circle icon-white"></li> Opslaan</button>
        </div>
    </div>

このポップアップ プラグインは、www.twitter.github.com/にあります。

于 2013-02-28T10:33:49.863 に答える