私は周りを検索しましたが、答えを見つけることができませんでした。これは私の問題/質問です:
次のように CKEDITOR からページを取得します。
var oldText = CKEDITOR.instances.message.getData();
ここまでは順調ですね。文字列は次のようなものを保持します。
<table cellpadding="0" cellspacing="0" width="100%">
<tbody>
<tr>
<td align="left"
style="padding-top: 24px; padding-right: 0px; padding-bottom: 0px; padding-left: 28px;"
valign="top">
<!--//logo//-->
<a href="urlToSite" target="_blank"><img alt=""
src="urlToSite/image/data/Logo/logog7.png" /></a>
<!--//end logo//-->
</td>
<td align="right"
style="padding-top: 20px; padding-right: 28px; padding-bottom: 0px; padding-left: 0px;"
valign="top">
<div style="font-size: 18px; color: rgb(53, 115, 173);">Monday, 29
July 2013</div>
<div style="font-size: 11px; color: rgb(53, 115, 173);">
<a
href="http://urlToSite/index.php?route=ne/subscribe&uid={uid}&key={key}"
style="text-decoration: none; color: rgb(53, 115, 173);">Subscribe</a> | <a
href="http://urlToSite/index.php?route=ne/unsubscribe&uid={uid}&key={key}"
style="text-decoration: none; color: rgb(53, 115, 173);">Unsubscribe</a> | <a
href="urlToSite"
style="text-decoration: none; color: rgb(53, 115, 173);">Visit our
site</a>
</div>
</td>
</tr>
</tbody>
</table>
登録解除リンクを次のように変更しますか (これは switch ステートメントで発生しています)。
http://urlToSite/index.php?route=ne/unsubscribe&uid={uid}&key={key}&c=1&l=12
( l パラメータは動的であることに注意してください)。しかし、元の URL に戻すこともできません。
そのURLの文字列内を検索するにはどうすればよいですか(これらの追加のパラメーターをすべて使用するか、使用しないかによって異なります)、それを置き換えます。
私はそれについて無知ですが、皆さんが私を助けてくれたり、正しい方向に少しでも向けてくれたりしたら、それはとても素晴らしいことです.
つまり、これは私が達成したいことです:
- 私はこのURLを持っています:
http://urlToSite/index.php?route=ne/unsubscribe&uid={uid}&key={key}
- このURLに変更したい:
http://urlToSite/index.php?route=ne/unsubscribe&uid={uid}&key={key}&c=1&i5
- 次に、URLを次のようにすることはできません。
http://urlToSite/index.php?route=ne/unsubscribe&uid={uid}&key={key}&c=1&i=2
- しかし、URLを通常に戻すこともできません(これは静的変数内でもできるので、大したことではありません...)
-ところで-悪い英語でごめんなさい;)
編集
以下は問題を解決する良い方法だと思いますか???
1: I save the default URL in an string
2: I do an replace with the default URL on the oldText, and insert the new URL
3: I save the new URL in an difrent string
4: Next time i do an replace with the saved new URL on the oldText and insert an newer URL
5: and save that and so on...
EDIT2 私が現在使用しているコードは次のとおりです(答えはWoodyから来ました)
var oldText = CKEDITOR.instances.message.getData();
var div = document.createElement("div");
div.innerHTML = oldText;
var a = div.querySelector('a[href^="http://www.gospel7.com/index.php?route=ne/unsubscribe"]');
$(a).attr("href", "http://urlToSite/index.php?route=ne/unsubscribe&uid={uid}&key={key}&c=1&l=12/")
console.log(a);