2

基本的に、2つの機能が必要です。div1 つ目は、いくつかの ajax データを含む要素と、閉じる機能を起動できるボタンを先頭に追加します。onclick最初の関数は、クリックしたときに削除関数を起動する属性の適用に問題があることを除いて、私が望むすべてのことを行います。

しかし、これとは別に、私は を機能させることができませんでしたremove function

あなたが私がこれをより良くするのを手伝ってくれるなら、私は感謝します.

function displayCrRef(refPid, refFs, pidOfReferringP) {

    $.get("crRefParaExtract.php", {
        pid: refPid,
        fs: refFs
    }, function(data) {

        $("#pwrap_" + pidOfReferringP).prepend("<div id='#crRef_" + refPid + "' style='float: left;  width: 350px; margin-right: 60px; padding: 10px; background-color: #E6EDE8'>" + "<a id='crossRefRemoveButton'>Return to normal text</a>" + data + "</div>");


    });
    var rmFxnParam = "'" + refPid + "'";
    $("#crossRefRemoveButton").attr("onclick", "removeCrossRef(" + rmFxnParam + ")");
    $("#" + pidOfReferringP).css({
        float: 'left',
        width: '425px'
    });
    $("#menu_" + pidOfReferringP).css({
        float: 'none',
        clear: 'both'
    });
   }


   function removeCrossRef(refPid) {
       $("#crRef_" + refPid).remove();

   }​
4

2 に答える 2

2

で始まる ID#は無効です。id 値と jQuery の CSS セレクターを混同していると思います。

[hashTag] + [ID of Element] = CSS ID Selector

これはうまくいくはずです:

function displayCrRef(refPid, refFs, pidOfReferringP) {

    ...
    // Remove the hash tag here: id='crRef_" + refPid + "'
    $("#pwrap_" + pidOfReferringP).prepend("<div id='crRef_" + refPid + "' style='float: left;  width: 350px; margin-right: 60px; padding: 10px; background-color: #E6EDE8'>" + "<a id='crossRefRemoveButton'>Return to normal text</a>" + data + "</div>");
    ...

}

function removeCrossRef(refPid) {
    $("#crRef_" + refPid).remove();
}​

追加情報

ID および NAME トークンは文字 ([A-Za-z]) で始まり、その後に任意の数の文字、数字 ([0-9])、ハイフン ("-")、アンダースコア ("_") が続く場合があります、コロン (":")、およびピリオド (".")。

参考:http ://www.w3.org/TR/html4/types.html

于 2012-06-08T19:54:12.220 に答える
-3
$("#crossRefRemoveButton").addEventListener('click',function(){
   removeCrossRef(rmFxnParam);
});
于 2012-06-08T19:53:32.653 に答える