2017-01-17 7 views
0

属性私はデータ - アルトALTタグを削除したいので、それはDrupalの7 Webフォームの変更フォームの入力が

<input type="text" data-alt="abc"> 
以下のようにする必要があり

<input type="text" alt="abc"> 

以下のように私は、alt属性を持つフォームを持っています

以下のコードを試しましたが、動作しないようです。

function act_form_alter(&$form, &$form_state, $form_id) { 
    foreach($form["submitted"] as $newForm) 
    { 
     foreach($newForm as $keyid=>$frmArr) 
     { 
      if(isset($frmArr[]["#attributes"]["alt"])) 
      { 
        $alt = $frmArr["#attributes"]["alt"]; 
        unset($newForm[$keyid]["#attributes"]["alt"]); 
        $newForm[$keyid]["#attributes"]["data-alt"] = $alt; 
      } 
     } 
    } 
} 

は、それが

答えて

0

あなたのforeach()イテレーションで$formだけ$valuesを変更していない修正する方法で助けてください。

  • いずれ$form変数自体変更:

    $form[...][$keyid]['#attributes]['data-alt'] = $alt; 
    
  • 又は(アンパサンド&先行)referenceによって$valueを通過します。

    foreach ($form as &$value) { 
        # code... 
    } 
    
+0

あなたは '$ form'配列をダンプ&あなたの質問に出力を追加することができ、あなたは確かに詳細コード – gaurav

+0

で助けてくださいすることができます動作しませんか? –

関連する問題