What is the best way to send the current element to a function that is bound to a click

Below is an example of some code:

<table>
    <tr data-bind='template: { name: "GridColumnTable", foreach: columns }' ></tr>
</table>    

<script type="text/html" id="GridColumnTable">       
    <td>
        <span data-bind="text:name, click:function(event){ alert('blabla') }">
          none 
        </span>      
    </td>
</script>

Here is the included Javascript code:

var viewModel = {
    columns: new ko.observableArray(),
    changeColumnName: function(column)
    {
        column.name('asdas');
    }
}

viewModel.columns.push({       
    name: new ko.observable('column1')
});

    viewModel.columns.push({       
    name: new ko.observable('column2') 
});

    viewModel.columns.push({       
    name: new ko.observable('column3') 
});

    viewModel.columns.push({       
    name: new ko.observable('column4')
});       


ko.applyBindings(viewModel);

For a live demo, check out this JSFiddle link.

I'm looking to update the column name when it's clicked on. However, I am unsure how to pass the current element to my changeColumnName function. Any suggestions?

Answer №1

In a jQuery template, the variable $data represents the data that the template is being bound to. Therefore, you should use:

viewModel.changeColumnName($data)

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Creating sitemaps for multi domain websites using NextJS

We are implementing a next-sitemap package to generate sitemaps for our Next.js pages located in the /pages directory. For pages that come from the CMS, we use server-sitemap.xml with SSR. Despite having 6 different domains, we manage them within a single ...

Why is my popover not showing in AngularJS?

I've integrated this particular component into my project, but unfortunately, when I click on the icon, the popover does not appear. The expected behavior is that clicking on the icon should trigger the display of the popover, however, currently noth ...

Issues with the audio on ExpressJS video streaming can be quite vexing

After multiple attempts to run an ExpressJS web server that serves videos from my filesystem, I've encountered a frustrating issue. Whenever a video is played, there are constant popping sounds and eventually the audio cuts out completely after 3-10 m ...

Pattern for money with two decimal points and a comma as the separator

I have currently implemented regex in the convertNumberToString property, where a comma appears every 3 digits entered. The convertStringToNumber property simply removes the comma to convert it back to a number type. Now, I want to update the regex for t ...

Something is seriously wrong with the datetime in fullcalendar JavaScript

I've been diving into a tutorial for creating a calendar scheduler in asp.net MVC5 from this link. One issue I'm facing is the datetime being passed and stored as the min value in the database (1/1/0001 12:00:00 AM), almost like it's null b ...

Troubleshooting Problems with Ajax Servlets

When I perform a search, the results are returned and shortly after, the page redirects to a servlet displaying raw JSON data. It's a bit confusing for me. This JSP form submission: <form class="col-lg-12" action="./urllinks" method="GET" id="sea ...

Prevent the ability to save or use the "Save As" option when downloading a file

I am currently working on a web page that includes a download option. When the user clicks on the download option, they are presented with three choices: Open Save Save As However, I only want the user to see the option to "Open." Open For this ...

Using jQuery to serialize parameters for AJAX requests

I could use some help figuring out how to set up parameters for a $.ajax submission. Currently, I have multiple pairs of HTML inputs (i pairs): > <input type="hidden" value="31" name="product_id"> <input > type="hidden" value="3" name="qua ...

Is it possible for me to pass a reference to a specific object's instance function?

Can JavaScript allow you to pass a function reference to a specific object's function, similar to what can be done in Java? Let's take a look at this code snippet: _.every(aS, function (value) { return exp.test(value); }); What if we want ...

Transforming an older React website with react-helmet-async

I am working on a React site that is client-side rendered and I want to use the react-helmet-async module (version 1.0.7). Here's my scenario in the React app: /public/index.js: <head> <title>My title in the index file</title> ...

What is the benefit of using process.nextTick() prior to executing a mongoose query?

I've observed a considerable number of Mongo (mongoose ORM) Queries being performed inside the process.nextTick() method. Despite the fact that nextTick defers the execution until the next iteration, it puzzles me as to why these queries are implement ...

Save the ID from the listview in the browser's localStorage

I have a listview that is generated by a loop: for(var i = 0; i < data.length; i++) { var garage = data[i]; $("#content-p").append( "<ul data-role=\"listview\">" + "<li><a href=\"#\" i ...

The error message "Required parameter not provided" appeared when trying to utilize a nested dynamic route in Next.js

Issue: The error message indicates that the required parameter (plantName) was not provided as a string in getStaticPaths for /plants/[plantName]/streaming-data/[panel] The error above is being displayed. My folder structure follows this pattern: plants & ...

Verify that the lower limit is not higher than the upper limit set in an Angular application

In my Angular application, I have two input fields for minimum and maximum values. I want to display an error message if the user enters a minimum value greater than the maximum value provided, or the default maximum value if none is provided. The form is ...

Combining Jquery scripts for seamless integration

I am facing an issue while trying to execute two different jQuery scripts simultaneously - one named balancedgallery and the other museum. Individually, each script works perfectly fine. However, when running them together, the balancedgallery script seems ...

Convert data in JavaScript and send it as a string in PHP

I'm currently facing a small issue with my JavaScript code. Specifically, I am using AJAX and attempting to retrieve a variable in PHP. Everything seems to be working fine except for the "param" data. Below is the snippet of my code: $('#sign ...

Storing the model using three.js

Is it feasible to store models created in three.js into a database and later retrieve them, rather than just using the save tab? ...

Retrieve mongodb objects that fall within a specified date range

Within my collection, there is an example document structured as follows: { "_id" : ObjectId("5bbb299f06229dddbaab553b"), "phone" : "+38 (031) 231-23-21", "date_call" : "2018-10-08", "adress_delivery" : "1", "quantity_concrete" : "1", ...

PHP form submission upon conditions being satisfied

I am not utilizing Javascript as it is disabled in my current environment. Here is the code that I would like you to review. I am attempting to use PHP to replicate the functionality of Javascript or jQuery's simple : document.form2.submit() <div ...

"Using Three.js GLTF, switch the material of one object to match the material of

Recently, I encountered an interesting challenge with a scene imported from a glb-file using GLTFLoader. The scene features various objects of guys in different colors, each with its own material (RedMat, BlueMat, GreenMat, etc) created in Blender. Interes ...