Pergunta

Eu tenho um controle de botão ASP: Button e estou usando os parâmetros "CommandName" e "CommandAgument" no arquivo .aspx. O commandName é encontrado com < %# avaliar ("nome") %>, mas o CommandAgument deve ser encontrado por meio de uma função JavaScript. No entanto, não tenho muita certeza de como fazer isso em linha. A função retorna um número (número inteiro), que deve ser usado como o valor do CommandAgument. É possível fazer isso? Obrigado

Editado para adicionar códigoEu adicionei um código de exemplo (não tenho acesso ao código de código real). No entanto, basicamente, o CommandAgument deve ser o valor retornado pela função calculAtElngth ().

function CalculateLength(a,b) {
    return a*b;
}

<asp:Button ID="btnUpdate" runat="server" Text="Update" CommandName=<%# Eval("Name") %> CommandArgument= ??? //Should be result of CalculateLength(a,b). 
Foi útil?

Solução

Não tenho certeza de como você vai fazer com que o JavaScript funcione porque o código ASPX está executando o lado do servidor e criando a saída para o seu botão. Quando o JavaScript executa, o código da página já foi construído e o HTML do botão e o JavaScript anexado também.

Existe alguma maneira de calcular o lado do servidor de funções e, em seguida, apenas faça:

CommandArgument="<%= CalculateLengthServerSide() %>"

Você não precisa usar apenas os dados para a sua ligação, você pode chamar qualquer função lateral do servidor.

Editar: Tente alternar sua etiqueta que armazena a quantidade para uma caixa de texto e fazê -la ler apenas para que os usos não mexem com ela. Depois que o botão for clicado, você poderá encontrar o controle da caixa de texto e ler o valor publicado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top