Sur un site Web qui comporte une liste de catégories, et chaque titre de catégorie est lié dans ce format: http://localhost/admin/category/unpublish/2
J'ai écrit le code js suivant, essayant de capturer l'url et les segments 'unpublish' (action) et '2' (id), et je dois envoyer la demande à http://localhost/admin/category
$('#statusChanges a').click(function(evt){ // use the click event of hyperlinks evt.preventDefault(); var url = $(location).attr('href'); // var action = url.segment(3); /*JS console complains that url.segment() method undefined! */ // var id = url.segment(4); $.ajax({ type: "GET", url: $(location).attr('href'), dat: '', /* do I need to fill the data with json data: {"action": "unpublish, "id": 2 } ? but I don't know how to get the segments */ success: function(data) { $('.statusSuccess').text('success!'); }, error: function(data) { $('.statusSuccess').text('error!'); } }); }); // end of status change
Essaye ça
var url = $(location).attr('href').split("/").splice(0, 5).join("/");
Réponse à la mise à jour:
Utiliser this
objet pour obtenir le lien d'ancrage actuel voir ci-dessous
$(this).attr('href')
Divisez l'URL en segments d'abord:
var segments = url.split( '/' ); var action = segments[3]; var id = segments[4];
Je pense que vous pouvez utiliser split . Ensuite, vous pouvez disposer d'un tableau à partir duquel vous pouvez obtenir l'action et l'identifiant.