Hur och var ändra text på submit-knappar?

Events happening in the community are now at Drupal community events on www.drupal.org.
bambi_2's picture

Löjlig fråga troligtvis, men jag har kört fast och kan inte komma på var jag ska ändra det.

Tacksam för hjälp!
A-B

Comments

Du kan antingen använda

ChristianP's picture

Du kan antingen använda jQuery. Eller så får du skapa en egen override-function i template.php. Jag är dock urusel på php, så jag kan visa hur du ändrar genom jQuery:

$(document).ready(function() {
$("#edit-submit").attr("value", "skriv-value-här");
});

"edit-submit" brukar vara standard på Drupals webformulär. Men det får du annars kolla med Firebug. Sen kommer detta iofs ändra på ALLA submitknappar på hela sidan, om du vill specificera skriver du såhär:

$(".minClass #edit-submit").attr("value", "skriv-value-här");

Eller
$("#webform-25 submit").attr("value", "skriv-value-här");

Precis som du gör med CSS.

Inte att rekommendera...

farrington's picture

Det första förslaget är direkt farligt att använda.

Det påverkar alla formulär i hela systemet, och ex. har vissa formulär flera submit-knappar med olika syften (ex. CCK's hantering av tillägg/redigering av fält).

Gör som som du föreslog slutar dessa formulär att fungera, då man använder submit-knappens värde för att utvärdera vilken knapp klickade du på.

/marcus

/marcus

Tack - och hmm... Var (i

bambi_2's picture

Tack - och hmm... Var (i vilken fil skriver jag in detta)? Jag är nämligen urusel på js.

Ann-Britt

Om det är för ett

ChristianP's picture

Om det är för ett webbformulär så finns det två sätt du kan göra det på.

Antingen lägger du in denna kod nedan i page.tpl.php:

<script type="text/javascript">
klistra i det jag skrev ovan här
</script>

Eller så kan du gå in på webbformulärets egenskaper och i "Beskrivning" lägger du till (se till att du har PHP-aktiverat, det sätter du igång under Modules).

<?php
drupal_add_js
('

// kod här

});'
, 'inline' ); // Lägg bara till ', 'inline' ); efter sista semikolonet och parantesen.

?>

För att ändra i formulär

pontus_nilsson's picture

För att ändra i formulär finns funktionen hook_form_alter(). Koden behöver ligga i en modul. Skapa en mapp modules i din sajtspecifika mapp. Skapa en mapp i modules som heter mymodule. Skapa en fil som heter mymodule.info i mappen med detta innehåll

name = Mymodule
description = My module
package = Custom
core = 6.x
version = "6.x-1.x-dev"

Koden nedan lägger du i mymodule.module.

/**
* Implementation of hook_form_alter()
*/
function MYMODULE_form_alter(&$form, &$form_state, $form_id) {

switch ($form_id) {
    case 'form_node_form':
      $form['buttons']['submit']['#value'] = t('MY SUBMIT VALUE');
      return $form;
    break;
  }
}

Texten mymodule kan självklart bytas ut för att passa din sajt. T.ex. bambicustom :)

Denna rad case 'form_node_form': behöver ändras så att den går på ditt formulär du vill ändra på.
Installera modulen Devel.

I koden ändra till detta:

function MYMODULE_form_alter(&$form, &$form_state, $form_id) {

dpm ($form_id);
switch ($form_id) {

Då kommer modulen skriva ut namnet på alla dina formulär på den sida du råkar befinna dig på. Gå till den sidan där formuläret du vill ändra på finns och leta upp vilket ID du ska använda.

//Pontus Nilsson, Digitalist

Tack - det ska jag testa! A-B

bambi_2's picture

Tack - det ska jag testa!
A-B

Ann-Britt

Sweden

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: