inside view have button follow:
<button data-assigned-id="@iduser" onclick="updateclick()" type="button" class="btn btn-sm btn-default"></button>
my div
<div id="partial_load_div"> </div>
script
function updateclick() { var id = $(this).data('assigned-id'); $('#partial_load_div').show(); $('#partial_load_div').load('/users/updatepartial?id=' + id); }
the id shows undefined, checked , @iduser
has value
then in chrome dev got error
get http://localhost:19058/users/updatepartial?id=undefined 400 (bad request)
any idea how fix this?
in current script, $(this)
refers window
object (not button) not have data-
attribute undefined
.
you solve passing element function
<button data-assigned-id="@iduser" onclick="updateclick(this)" type="button" ... ></button>
function updateclick(element) { var id = $(element).data('assigned-id'); ....
however better approach use unobtrusive javascript rather polluting markup behavior.
<button data-assigned-id="@iduser" id="mybutton" type="button" class="btn btn-sm btn-default"></button>
$('#mybutton').click(function() { var id = $(this).data('assigned-id'); // $(this) refers button .... });
Comments
Post a Comment