Skip to content

Topics Save Button uses href with javascript protocol #19912

Closed
@Ryuno-Ki

Description

@Ryuno-Ki

Description

I noticed this while working on #19900.

In general, href="javascript:;" is an anti-pattern (see http://www.jibbering.com/faq/#javascriptURI for the original intent).
As a rule of thumb, links go somewhere and buttons are used to resolve actions.

<a class="ui button primary" href="javascript:;" id="save_topic"
data-link="{{.RepoLink}}/topics">{{.i18n.Tr "repo.topic.done"}}</a>

is the only occurence I could find so far. Since it is controlled by JavaScript alone, a fix would require the <a> to become <button type="button"> (or perhaps a submit button if there would be a <form> and Go-side logic to update the saved topics).
Plus some style changes to make it look like before.

Gitea Version

1.17.0+dev-675-g81cf00686

Can you reproduce the bug on the Gitea demo site?

Yes

Log Gist

No response

Screenshots

No response

Git Version

No response

Operating System

No response

How are you running Gitea?

try.gitea.io

Database

No response

Activity

wxiaoguang

wxiaoguang commented on Jun 8, 2022

@wxiaoguang
Contributor

There could be a lot of bad smells in a large project which is many years old ..... so, large projects always need maintaining and refactoring.

And I think the AJAX was used there to avoid page reload/refresh, just like what GitHub does, it seems no benefit to replace it with a form.

silverwind

silverwind commented on Jun 8, 2022

@silverwind
Member

Proper solution is probably <a role="button">.

added a commit that references this issue on Nov 15, 2022
de6dfb7
added a commit that references this issue on Nov 22, 2022
9e255cf
locked and limited conversation to collaborators on May 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      Participants

      @silverwind@wxiaoguang@Ryuno-Ki

      Issue actions

        Topics Save Button uses href with javascript protocol · Issue #19912 · go-gitea/gitea