SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Current ID an Button übergeben

Unbeantwortet Dieser Beitrag hat 7 Antworten

Ohne Rang
3 Beiträge
Martel erstellt 15 Okt. 2016 11:31
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Guten Morgen,

ich bin seit kurzem mit SharePoint zugangen und habe da ein Problem das ich noch nicht gelöst bekommen habe.

Ich klicke auf ein Item und die Editform öffnet sich, in dieser Editforum gibt es einen Button.

Wenn dieser Button gedrückt wird, soll die "checklist" Form für dieses ITEM geöffnet werden.

 

Es öffnet sich derzeit zwar die ChecklistForm aber nur für das erste ITEM in der Liste. Also die ID ist falsch.

Wie muss der Code des Buttons aussehen, damit die Checkliste für das aktuell geöffnete ITEM angezeigt wird?

Ich hoffe das war soweit verständlich. Wenn nicht einfach Fragen.

 

Vielen Dank

Alle Antworten

Ohne Rang
221 Beiträge
MiriMar Als Antwort am 17 Okt. 2016 09:06
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo,

Wie ist der Button denn angelegt? Also als SharePoint Button oder HTML oder ASP? Poste doch bitte mal den Code, der da dahinterliegt (Kriegt man ganz einfach raus, indem man im Browser F12 klickt und dann den Button markiert)

Je nachdem muss da nämlich meistens recht trivial {@ID} eingegeben werden. Ganz wichtig aber: Das klappt natürlich nur im Edit-Modus. Bei Neu gibt's ja noch keine ID, auf die da reverenziert werden könnte. Aber das hast du ja scheinbar bedacht, geht ja nur um die Editform:)

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 17 Okt. 2016 10:03
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das Prinzip ist recht einfach: hole per JavaScript die ID aus der URL und hänge sie an die URL, die vom Button aufgerufen wird.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
3 Beiträge
Martel Als Antwort am 17 Okt. 2016 15:12
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Vielen Dank für die Hilfe.

[quote user="Andi Fandrich"]Das Prinzip ist recht einfach: hole per JavaScript die ID aus der URL und hänge sie an die URL, die vom Button aufgerufen wird.[/quote]

- Leider kenne ich mich mit Java noch nicht aus. HTML, etwas php, viel Autohotkey - Aber Java fange ich gerade erst an. Ich weiß noch nicht wie das geht.  

Das ist mein Code (Browser):

<INPUT onclick="javascript: __doPostBack('ctl00$m$g_0d653e49_19ab_4845_8b34_b0a37135eb4f','__redirect={pom_running_order.aspx?@ID_x003D_[%Curent Item: ID%]}')" type=button value="Running Order" name=btnFormAction>

 Das ist der Code aus dem SharePoint Designer:

<input type="button" value="Running Order" name="btnFormAction" onclick="javascript: {ddwrt:GenFireServerEvent('__redirect={pom_running_order.aspx?@ID_x003D_[%Curent Item: ID%]}')}" /></td>

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 17 Okt. 2016 16:48
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das ist ein serverseitiger Button. Beschreibe doch bitte erstmal wie genau Du den Button erzeugt hast und was er denn eigentlich machen soll.

PS: Bitte nicht Java und JavaScript verwechseln. Das sind zwei komplett unterschiedliche Dinge.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 17 Okt. 2016 17:06
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Und hier noch eine JavaScript-Funktion, mit der man die ID aus der URL abholen kann:

function getQueryStringParameter(paramName) {
 
var params = document.URL.split("?")[1].split("&"),
      i,
      singleParam;
  for (i = 0; i < params.length; i++) {
    singleParam = params[i].split("=");
    if (singleParam[0] == paramName) {
      return singleParam[1];
    }
  }
  return "";
}

Wenn Du also einen Button hast
<input type="button" id="myButton" value="Klick mich" />

kannst Du ihm so beibringen, was beim Klick geschehen soll:

document.getElementById("myButton").onclick = function() {
  window.location = "OtherPage.aspx?ID=" + getQueryStringParameter("ID");
}

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
3 Beiträge
Martel Als Antwort am 18 Okt. 2016 12:35
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Guten Tag,

vielen Dank für den Code und die Hilfe.

 

Hier habe ich eine Lösung die ich für andere Suchenende bereitstelle:

<input type="button" value="Running Order" name="btnFormAction" onclick="var ur = window.location.href;var URL = ur.replace('Aktuelle.aspx','ZIELFORM.aspx');window.location.assign(URL);" />

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 18 Okt. 2016 14:04
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Na das nenne ich mal einen schmutzigen Hack ;-)

Aber wenn schon, kann man das noch weiter vereinfachen:
onclick="window.location=window.location.href.replace('aktuelle.aspx','zieform.aspx');"

Viele Grüße
Andi
af @ evocom de
Blog