problema js

alfinete

Power Member
FILE ASPX
_______________________________
Código:
<%@ Page Language="C#" MasterPageFile="~/SACMasterPage.Master" AutoEventWireup="true" CodeBehind="DisciplinesINS.aspx.cs" Inherits="StepAhead.Web.ENBSettingCurriculum.DisciplinesINS" Title="Untitled Page" %>

<%@ Register Src="ENBStatsWUControl/wucDisciplinesINS.ascx" TagName="wucDisciplinesINS"
    TagPrefix="uc1" %>


<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<script type="text/javascript" src="\JS\jsinsert.js"></script>

    <uc1:wucDisciplinesINS id="WucDisciplinesINS1" runat="server">
    </uc1:wucDisciplinesINS>
 
</asp:Content>


FILE ASCX

Código:
<table id="Table3" runat="server" border="0" cellpadding="1" cellspacing="2" class="SACTable"
    width="100%">
    <tr>
        <td class="SACGridViewMenuTitle" >
            <asp:Label runat="server" ID="Label2" Text="Insersão de Pré Requisitos">
            </asp:Label>
        </td>
        <td class="SACGridViewMenuTitle" width="20px" >
        <input type="button" id="btnplusreqirement" runat="server"  class ="SACButton" value="+" onclick="javascript:visible();" />
     
        </td>
    </tr>
</table>
<div id="dvprerequirements" style="display:none" >

</div>


FILE JS EM JS/jsinsert.js

Código:
function visible()
{
    if(document.getElementById('btnplusreqirement').value="+")
    {
     document.getElementById('btnplusreqirement').value="-";
     document.getElementById('dvprerequirements').style.display="block";
     } 
     else
     {
     document.getElementById('btnplusreqirement').value="+";
     document.getElementById('dvprerequirements').style.display="none";
     }
}

o peroblema é que eu quero atraves de javascript por visivel e invisivel a div respectiva
mas ele da-me obj expected

agradcia uma ajuda
 
Código:
function visible(val)
{
  var valor;
  
   if (val == "" )
   valor = "-";
   if (val == "+")
   valor = "-";
   if (val == "-")
   valor = "+";
   
    if(document.getElementById('btnplusreqirement').value == "+" )
    {
     document.getElementById('btnplusreqirement').value = valor;
     document.getElementById('dvprerequirements').style.display = "block";
     } 
     
     if  (document.getElementById('btnplusreqirement').value == "-")
     {
     document.getElementById('btnplusreqirement').value = valor;
     document.getElementById('dvprerequirements').style.display = "none";
     }
}

ja esta melhor muda os sinais mas não os displays , ou seja passa nos ifs..
mas pq isto acontece...?

agradecia uma ajuda
 
Não sei se é possivel juntar os 2 ifs mas se desses sempre ficas com o código mais legível.

Estas a utilizar alguma ferramenta de debug? Se não, recomendo o Firebug para o Firefox. Podes fazer debug de JS e também ver o DOM da tua pagina.

Se estás vê se o JS está a aceder correctamente ao teu elemento e se está a alterar o DOM deste.
 
thanks assim ja bombeca fixe

Código:
function visiblerequeriments(val)
{
  var valor;
  
  if (val == "+")
   valor = "-";
  if (val == "-")
   valor = "+";
   
    if(document.getElementById('btnplusreqirement').value == "+" )
    {
     document.getElementById('btnplusreqirement').value = valor;
     document.getElementById('dvprerequirements').style.display="block";
     } 
     else
    
     {
     document.getElementById('btnplusreqirement').value = valor;
     document.getElementById('dvprerequirements').style.display="none";
     }
}
 
Back
Topo