プロが教える店舗&オフィスのセキュリティ対策術

Javascript(jQuery)でliタグをクローンし、その中の要素内の文字列が、とある条件の場合に文字列を加工する必要があります。

作業しているファイル自体はHTMLで、一般的なMVCフレームワークを利用。
PHPのコントローラ内には、文字列を加工するためのアクションが準備されているのですが、そのアクションをインラインで記述されたJSと絡めて利用したいです。

以下例となります。(例のためクローン処理は割愛します)

■hoge.html (view)
1 <script type="text/javascript">
2 $("li").each(function(){
3 hoge = ‘<?php echo $this->trimAction( $(this).html() ); ?>’;
4 $(this).html(hoge);
5 });
6 </script>

上記3行目の「trimAction」というアクションが複雑な作りのため、そのまま再利用したい。
ただし引数を持たせる必要があり、そこにjsで取得した値を利用したいのですが、$(this).html()の部分をコーテーションで括るなどいろいろ試したものの、うまくActionを呼び出せておりません。

また、ViewからPHPのみの記述であれば、上記Actionは普通に呼び出せているので、Ajax経由で取得する方法はできるだけ避けたいです。

※なお諸事情により上記のような状況が生まれておりますため「こういう作りがそもそもおかしい」と言ったようなご意見はご遠慮いただけると幸いです。

とても困っておりますので、何卒よろしくお願いいたします。

A 回答 (1件)

実際の内容が、よくわかりませんが・・・



>とある条件の場合に~~
というのが、HTML出力時に判断できるのであるならば、PHP側でそのまま処理をしてしまえばよいでしょう。

閲覧者の何らかのリアクションでその条件なるものが決まるのなら、Ajaxまたは通常の遷移で処理するか、あるいはスクリプトで対応の処理も行ってしまうかですね。
(理由は、実行の順序を考えてみればわかるはず)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!