<input type="radio" name="data[Order][shipping_method_id]" id="ShippingMethod10" value="10" />
<label for="ShippingMethod10">something else</label>
</fieldset>
var form = $('OrderForm');
var input = form['data[Order][shipping_method_id]'];
var paymentValue = $(input).getValue();
Okay, du willst auf ein Radiobutton-Set zugreifen, das ist nochmal was anderes, als das einfache Auslesen eines Feldwertes.
Das geht soweit ich weiß nicht direkt mit Prototype, insofern ist dein Ansatz, der ein wenig an Prototype vorbeiprogrammiert und diesen <http://de.selfhtml.org/javascript/objekte/elements.htm@title=klassischen Ansatz> zum Zugriff auf Formularfelder verfolgt, schon sehr brauchbar.
var form = $('OrderForm');
var input = form['data[Order][shipping_method_id]'];
Das ist schon ganz richtig, bzw. ausführlich würde man schreiben:
var form = $('OrderForm');
var input = form.elements['data[Order][shipping_method_id]'];
Jetzt hast du in input nicht ein einzelnes input-Element, sondern input ist ein Array mit allen Radio-Buttons dieses Namens. Wenn du den angewählten Radiobutton in dieser Liste finden willst, musst du sie mit einer for-Schleife durchlaufen und bei jedem Feld schauen, ob die Eigenschaft checked gesetzt ist - siehe etwa http://www.dcljs.de/faq/antwort.php?Antwort=forms_radioselect.
Das ist natürlich etwas sehr »zu Fuß« und Old-School, deshalb gibts für Prototype Helferfunktionen:
http://xavisys.com/2007/03/using-prototype-javascript-to-get-the-value-of-a-radio-group/
Die sind aber meines Wissens nicht standardmäßig in Prototype vorhanden, man muss sich also selbst was basteln.
Mathias