如何使用jquery为data-url属性设置新值?

时间:2015-12-19 09:37:34

标签: javascript jquery ajax laravel jquery-ajaxq

页面加载前:

<a data-url="https://abc@..." class="mybuttons"  data-type="facebook">

之后:在页面加载时使用jquery我用来追加新的数据 - url

https://xyz@...

现在,当我想使用facebook api分享这个新数据网址时     它会在网址栏中显示旧网址data-url

我想要分享新的data-url

我已使用$(this).attr('data-url',value.url)成功更改了data-url。该怎么办请帮助我。甚至我的新// script.js // create the module and name it scotchApp // also include ngRoute for all our routing needs var scotchApp = angular.module('scotchApp', ['ngRoute']); // configure our routes scotchApp.config(function($routeProvider, $locationProvider) { $routeProvider // route for the home page .when('/', { templateUrl: 'pages/home.html', controller: 'mainController' }) // route for the about page .when('/about', { templateUrl: 'pages/about.html', controller: 'aboutController' }) // route for the contact page .when('/contact', { templateUrl: 'pages/contact.html', controller: 'contactController' }); // use the HTML5 History API $locationProvider.html5Mode(true); }); // create the controller and inject Angular's $scope scotchApp.controller('mainController', function($scope) { // create a message to display in our view $scope.message = 'Everyone come and see how good I look!'; }); scotchApp.controller('aboutController', function($scope) { $scope.message = 'Look! I am an about page.'; }); scotchApp.controller('contactController', function($scope) { $scope.message = 'Contact us! JK. This is just a demo.'; });也没有在页面来源中显示。

2 个答案:

答案 0 :(得分:1)

在你的行中:

$(this).attr('data-url',value.url);

你确定this引用了正确的DOM对象吗?

尝试向锚添加ID:

<a id='face-url' data-url="htts://xyz@..." class="mybuttons"  data-type="facebook">

然后在您的代码中,以这种方式设置data-url属性:

$('#face-url').data('url', value.url);

现在您已设置了属性值,您必须确保 facebook API在您更改后才读取此属性

答案 1 :(得分:0)

我知道为时已晚,但是我遇到了这个问题,我认为我有解决方案 对我来说,解决方案是更改设置数据的方式。

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