0

以下のように動的に生成される「アンカータグ」があります(そのため、コンテンツを制御できません)。「id」属性を追加しました。実際のタグには id タグは含まれていません。これはデモンストレーション用であるため、jsfiddle を使用して Javascript をテストできます。

<a title="719132 bytes" id="ah" onclick="DispEx(this, event, 'TRUE', 'FALSE', 'FALSE', 'SharePoint.OpenDocuments', '0', 'SharePoint.OpenDocuments', '', '1\u002fPMS\u002f_layouts\u002fWordViewer.aspx?id=\u002fPMS\u002my.docx', '', '67', '0', '0', '0x400000300c231061'); return false;"
    href="/_layouts/download.aspx?SourceUrl=/documents/my.docx"
    jQuery16206020211467509253="188">

そのため、誰かがドキュメントをクリックすると、セキュリティ警告がポップアップ表示されます。この警告サインを抑制するには、「SharePoint の最初のインスタンスを SharePoint.OpenDocuments.3 に置き換える必要があります」と、2 番目のインスタンスを置き換える必要があります。空の文字列 ''

問題なくテキストを更新できました。新しい変更されたタグでタグを更新する際に問題があります。onclick基本的に、イベントをテキストで更新するにはどうすればよいですか?

これが私がこれまでに行ったことです(例はここからアクセスできます:http://jsfiddle.net/yhUu6/2/

基本的に私は結果がこのようになることを期待しています

<a title="719132 bytes" id="ah" onclick="DispEx(this, event, 'TRUE', 'FALSE', 'FALSE', 'SharePoint.OpenDocuments.3', '0', '', '', '1\u002fPMS\u002f_layouts\u002fWordViewer.aspx?id=\u002fPMS\u002my.docx', '', '67', '0', '0', '0x400000300c231061'); return false;"
    href="/_layouts/download.aspx?SourceUrl=/documents/my.docx"
    jQuery16206020211467509253="188">

onclick「アンカータグ」のイベントを更新するにはどうすればよいですか?

4

2 に答える 2

0

なぜ複雑な方法を選択するのですか? それらは関数の 2 つの引数にすぎません。次の例のように、2 つの変数を引数として使用して値を変更します。

<input type='button' value="your anchor" onclick="YourFuntion(arg1,arg2);return false;"/>
<input type='button' value='Try it' onclick='myfunction()'/>
<SCRIPT LANGUAGE="JavaScript">
<!--
var arg1 = 'SharePoint.OpenDocuments', arg2='SharePoint.OpenDocuments';
function YourFuntion(a,b)
{
alert(a);
alert(b);
}
function myfunction()
{
 arg1 = 'SharePoint.OpenDocuments.3';
 arg2 = " ";
}
//-->
</SCRIPT>
于 2013-02-22T06:23:56.273 に答える
0

これは最適なソリューションではないかもしれませんが、JQuery の代替概念を示すことができれば幸いです。アンカータグからテキストパラメーターを追跡/管理する複雑さを取り除き、JQuery (javascript) に移行できます。

JQuery の Click イベント:

<script language="JavaScript">
    $('#ah').bind('click', function() {

        var sharePoint = $(this).attr('parm-data');
        var sharePointParm1 = '';
        var sharePointParm2 = '';

        if("SharePoint.OpenDocuments" == sharePoint) {
            sharePointParm1 = 'SharePoint.OpenDocuments.3';
            $(this).attr('parm-data') = 'SharePoint.OpenDocuments.3';
        } else {
            sharePointParm1 = 'SharePoint.OpenDocuments';
            sharePointParm2 = sharePointParm1;
            $(this).attr('parm-data') = sharePointParm1;
        }

        DispEx(this, event, 'TRUE', 'FALSE', 'FALSE', sharePointParm1, '0', sharePointParm2, '', '1\u002fPMS\u002f_layouts\u002fWordViewer.aspx?id=\u002fPMS\u002my.docx', '', '67', '0', '0', '0x400000300c231061'); 
        return false;"
    });
</script>

そして、変更されたアンカー タグ:

<a title="719132 bytes" id="ah" parm-data="SharePoint.OpenDocuments"
        href="/_layouts/download.aspx?SourceUrl=/documents/my.docx"
        jQuery16206020211467509253="188">
于 2013-02-22T06:52:13.173 に答える