动态变量设置<href>到Ajax </href>

时间:2014-07-17 04:54:53

标签: javascript ajax

大家好我有一个关于JSON数据的快速问题,进入AJAX的href

我有JSON进入AJAX示例数据[i] .listingid 我怎么把它放进ajax里面的href?

以下是我的代码,它将更清楚地解释情况。

感谢您的时间

<script>
$.ajax({
     type: "GET",
     url: "listing.php",

     dataType: 'json',
     success: function (data) {
         for (var i = 0; i < data.length; i++) {
             console.log(data)

             var listingid = data[i].listingid;
             var myOtherUrl =
                 "SpecificListing.html?Listingid=" + encodeURIComponent(listingid);


             var html1 = "<div class=two> Listing Address : " + data[i].address + "<a href=myOtherurl>" +
                 data[i].listingid + "Click to view the details" + "</div>" +
                 "</a>"
             $('#display12').append(html1);
         }
     }

 });
</script>

4 个答案:

答案 0 :(得分:1)

您可以直接添加连接,如下所示:

var html1 = "<div class=two> Listing Address : " + data[i].address + 
  "<a  href='"+ myOtherurl +  "'>"+
   data[i].listingid+"Click to view the details" + "</a></div>";

或者您可以在完成将html附加到div之后使用 jquery attr 方法,如下所示:

var listingid = data[i].listingid;
var myOtherUrl = "SpecificListing.html?Listingid=" + encodeURIComponent(listingid);

var html1 = "<div class=two> Listing Address : " + data[i].address + 
  "<a id='hrefholder'  >"+
    data[i].listingid+"Click to view the details" + "</a></div>";
$('#display12').append(html1); 

$('#hrefholder').attr("href",myOtherurl  );

提示:不要忘记将id添加到锚标记

答案 1 :(得分:0)

以下是回调的清理版本(尽量避免HTML的字符串连接):

var successCallback = function(data) {
    var baseUrl = 'SpecificListing.html?Listingid=';

    for (var i=0; i<data.length; i++) {
        var listingId = data[i].listingid;
        var newUrl = baseUrl + encodeURIComponent(listingId);
        var $newDiv = $('<div />').addClass('two');
        var $newLink = $('<a />')
            .attr('href', newUrl)
            .text(listingId + ': Click to view details');

        $newDiv.append($newLink);
        $('#display12').append($newDiv);
    }
};

在此处找到包括模拟AJAX调用在内的完整工作实现:

http://jsfiddle.net/klenwell/N2k8X/

答案 2 :(得分:-1)

var html1 = "<div class=two> Listing Address : " + data[i].address + "<a href=myOtherurl>" + data[i].listingid+"Click to view the details" + "</a></div>";

会工作吗?你是否将ajax事件绑定到此链接?

答案 3 :(得分:-1)

Anjith和Orion都是对的,但你会有一个拼写错误: 定义中的变量名为myOtherUrl,但在你的连接字符串中,它是myOtherurl。变量区分大小写。 如果你把双引号放在它周围,你的变量将被解析为一个变量,所以它很好