crmepham
crmepham

Reputation: 4740

How can I set the value of a hidden input field using Jquery?

I am attempting to set the value of a hidden input field to the same as the value of a clicked link.

This is what I have attempted which doesnt work:

$(document).ready(function(){
$(".delete_link").click(function(){
        var deleteID = $(this).attr("data-value"); 
        $("#delete_value").attr("value") = deleteID;
    });
});

The variable deleteID is correctly set.

and the form for reference:

<form name="delete_form" action="delete_post.php" method="POST">
    <p>Please confirm you want to delete this post.</p>
    <input type="submit" id="delete_submit" name="delete_submit" value="confirm" />
    <input type="hidden" id="delete_value" value="" />
</form>

Upvotes: 0

Views: 6389

Answers (3)

gustavodidomenico
gustavodidomenico

Reputation: 4681

A complete example you (http://jsfiddle.net/79HEY/):

HTML

<form id="deleteform" action="delete_post.php" method="POST">
    <p>Please confirm you want to delete this post.</p>
    <input type="submit" data-id="100" id="delete_submit" name="delete_submit" value="confirm" />
    <input type="hidden" id="delete_value" value="" />
</form>

JavaScript

$(document).ready(function(){
    $("#deleteform").submit(function(){
        var deleteID = $("#delete_submit").data("id");
        $("#delete_value").val(deleteID);
        return true;
    });
});

Upvotes: 0

house9
house9

Reputation: 20614

use the val method

$("#delete_value").val(deleteID);

also for data attributes you might want to use the data method

$(this).data('value');

links:

Upvotes: 3

VisioN
VisioN

Reputation: 145388

For all form elements you need to use .val():

$("#delete_value").val(deleteID);

Upvotes: 1

Related Questions