javascript problem
Hej alla!
Kan man på något vis få det här o funka...?
Jag skulle alltså vilja ha in värdet på strAdmin i javascriptet men jag får bara felmeddelandet :
CS0103: The name 'strAdmin' does not exist in the class or namespace 'ASP.view_comp_aspx'
<code>
<script language="javascript" type="text/javascript">
function confirmInactivate(id)
{
if(<% Response.Write(strAdmin);%>= id){
alert("Du kan inte ta bort dig själv!")
}
else{
if(confirm("Är du säker på att du vill inaktivera detta företag!?!?") != false)
{
self.location.href="inactivate_comp.aspx?id=" + id;
}
}
}
</script>
</code>
Kanske det finns något annat sätt att göra det på?
MVH
Sara
Svara
Sv: javascript problem
För det första är det nog ett ravascriptproblem :)
Men det jag kan tänka mig är fel är if(<% Response.Write(strAdmin);%>= id){
Du kan inte blanda ASP.NET och javascript på det sättet. Du får hitta på en annan lösning.
Svara
Sv:javascript problem
jo, ja förstod nog att det var där det var fel, kanske lite dåligt formulerat av mig i första inlägget...=) men jag tänkte bara om det fanns nåt sätt att plocka in den variabeln i javascriptet...
men då får jag väl hitta på nåt annat...=)
Tack ändå!
Svara
Sv: javascript problem
Kan du inte lösa ut variabeln nere i html-koden för att sen därifrån kalla på javascriptet?
Svara
Sv:javascript problem
<b>Varför kan man inte det?</b>
Därför att .NET är ett serverbaserat språk, dvs att klienten skickar en fråga till servern, servern behandlar frågan och skickar sen tillbaka ett svar i form av html-kod. Javascript är ett klientspråk, dvs din egen dator behandlar allt du gör direkt, inget skickas till servern. Därför kan inte de 2 språken kommunicera, utan man får gå runt, och utnyttja html-kod t.ex.
Svara
Sv: javascript problem
Testa att ändra till nåt i den här stilen (gjorde om det lite men har fått det att funka iaf):
<code>
<script language="javascript">
function confirmInactivate(id)
{
if(<%= getAdmin() %> = id){
alert("Du kan inte ta bort dig själv!")
}
else{
if(confirm("Är du säker på att du vill inaktivera detta företag!?!?") != false)
{
self.location.href="inactivate_comp.aspx?id=" + id;
}
}
}
</script>
</code>
och en funktion i code-behind:
<code>
Protected Function getAdmin() As String
Return "test"
End Function
</code>
Tyvärr i VB men du kan säkert skriva om det. Om du då istället för "test" skriver ut strAdmin så kanske det funkar. Sen behöver det inte vara ett funktions-anrop utan du kan anropa en property i din code-behind om du hellre vill göra det.
Svara
Sv: javascript problem
Tjena!
Du kan inte använda ett skript inuti ett annat skript. Då fungerar det inte.
Låt först ditt ASP-språk skapa ett litet javascript-avsnitt där du överför variabeln StrAdmin till javascript-variabeln JsStrAdmin,
Response.Write("<script language='javascript' type=text/javascript'>)
Response.Write("var JsStrAdmin = '" & strAdmin & "';")
Response.Write("</script>")
Är inte säker på hur detta löses i C# men 'Response.Write' funkar i VB.
Nu finns variabeln JsStrAdmin tillgänglig för nedanstående javascript.
<script language="javascript" type="text/javascript">
function confirmInactivate(id)
{
if(JsStrAdmin == id) //OBS! Om du ska kolla om två värden är lika ska det vara dubbla likhetstecken!
{
alert("Du kan inte ta bort dig själv!")
}
else
{
if(confirm("Är du säker på att du vill inaktivera detta företag!?!?") != false)
{
self.location.href="inactivate_comp.aspx?id=" + id;
}
}
}
</script>
Svenne
Svara
Sv:javascript problem
Nu är det äntligen löst... så här blev det till slut:
<code>
<script language="javascript" type="text/javascript">
function confirmInactivate(id)
{
var JsStrAdmin = '<%=strAdmin %>';
if(JsStrAdmin == id){
alert("Du kan inte ta bort dig själv!")
}
else{
if(confirm("Är du säker på att du vill inaktivera detta företag!?!?") != false)
{
self.location.href="inactivate_comp.aspx?id=" + id;
}
}
}
</script>
</code>
strAdmin är deklarerad som en global variabel och innehåller en session som säger om den inloggade är admin eller inte...
så nu funkar det!!
Tack så mycket för hjälpen, alla ni som svarat!!
MVH
Sara
Svara