2015-08-21 49 views
-3
$("#form_threaded_comment_<?php echo $unique_id;?>").submit(function(){ 
    $('#<?php echo $vars['resultId'] ?>').<?php echo $append_prepend?>('<?php echo $posting_icon?>'); 

    elgg.action(this.action, { 
    data: $(this).serialize(), 

    success: function(data){ 
     $('#form_threaded_comment_<?php echo $unique_id;?>_textarea').val(''); 
     $('#reply_form_<?php echo $vars['parent_guid']?>').remove(); 
     $('#<?php echo $vars['resultId'] ?>').<?php echo $append_prepend?>(data.output); 
     $('#form_posting').remove(); 
    } 
    }); 
    return false; 
}); 

=========================== ==我需要在我的按鈕onclick事件中插入一個javascript代碼「包含標記」事件

HTML代碼:

<button onclick=" ..........." ></button> 

正如標題所說,我需要插入一個javascript代碼「包括標籤」點擊我的按鈕內部,所以所有這些代碼必須是我的按鈕內,因爲我的腳本刪除了頁面上的所有js標籤和腳本,我試圖調用一個沒有運氣的外部js,但是我的按鈕onclick中的所有js和標籤都運行良好。請注意,出於安全原因,該頁面上不允許使用腳本,但擴展頁面的功能,我需要運行此代碼,目前爲止,我的按鈕中只有這樣的方法,因爲我仍然可以在其中運行腳本。

我已經嘗試在腳本和所有內容中放入單引號,但是我陷入了腳本的中間,我需要正確地重新格式化腳本,就像在按鈕內部調用一個ajax。

+0

你能否解釋一下了。 –

+0

我的意思是說清楚你想做什麼。 Plse包含問題代碼 –

+0

爲什麼不創建一個像onclick =「fun();」的函數?幷包裝fun(){..} –

回答

0

通常這樣做被認爲是不好的做法。雖然自從您提到您不能將<script>放在頁面上(出於安全原因被刪除)。配售代碼onclick裏面看起來像這樣:

<button onclick=" 
$('#form_threaded_comment_<?php echo $unique_id;?>').submit(function(){ 
    $('#<?php echo $vars['resultId'] ?>').<?php echo $append_prepend?>('<?php echo $posting_icon?>'); 

    elgg.action(this.action, { 
    data: $(this).serialize(), 

    success: function(data){ 
     $('#form_threaded_comment_<?php echo $unique_id;?>_textarea').val(''); 
     $('#reply_form_<?php echo $vars['parent_guid']?>').remove(); 
     $('#<?php echo $vars['resultId'] ?>').<?php echo $append_prepend?>(data.output); 
     $('#form_posting').remove(); 
    } 
    }); 
    return false; 
});">Test</button> 

這是顯示警告的一個更簡單的例子:

<button onclick=" 
    function test() { 
     alert('Hello World'); 
    } 
    test(); 
">Hello World</button> 

爲什麼腳本標籤被拿走我勸你找出一個頁面並禁用它,因爲這是導致您採取這種迂迴解決方案的真正問題。由於通常上面的例子通常會是這個樣子:

HTML

<button id="hello">Hello World</button> 

JS

$("#hello").click(function(){ 
    alert("Hello World"); 
})