1

如果这已经得到回答,我很抱歉。我在 Chrome、IE9 中成功运行了这段代码,但在 IE8 和 IE7 中我得到了“SCRIPT438:对象不支持这个属性或方法”(没有说哪个属性或方法)第 1 行字符 1。我难住了。有人能把我从我的谜团中解救出来吗?(使用 jQuery v1.6.2。)非常感谢。

(感谢今天早上帮助过我的每个人,非常感谢。我发布的片段是一个更大项目的一部分,我试图找出我“认为”导致问题的部分。在剥离了一英里的代码后,我现在能够验证 IE7 和 IE8 正在生成:SCRIPT438:对象不支持此属性或方法 testkw.cfm,第 67 行字符 6。

这是在第 67 行:

$('.IDlookup').click(function() {                
    ID  = $(IDval).attr('value');                
    var r = "test.cfm";
    $.get(r,function(data){
        $("#Details").html(data);
    });
});

这是整个模板

<div id="Message" style="padding-left:10px;">

  <div style="margin-top:5px; margin-bottom:5px;">
    <input class="add" type="radio" id="_ID" name="lookupType" value="ID" />
    ID
    <input class="add" type="radio" id="_name" name="lookupType" value="name" />
Name</div>
  <div id="ID" class="rTypedesc" style="display:none; padding-left:5px;">
    <input type="text" id="IDval" name="IDval" value="Enter EntityID/ID" />
    <a class="IDlookup">Find &raquo;</a> </div>
  <div id="name" class="rTypedesc" style="display:none;">
    <table>
      <tr>
        <td><input type="text" id="nameinput" name="nameinput" /></td>
        <td style="padding-left:5px;"><a class="name">Find &raquo;</a></td>
      </tr>
    </table>
  </div>
</div>
<div id="Details"></div>
<script >
//
$.ajaxSetup ({
    // Disable caching of AJAX responses
    cache: false
});





  $("input[name$='lookupType']").click(function() {         
    var rType = $(this).val();         
    $(".rTypedesc").hide();         
    $("#"+rType).show();  
    });  

  $('.IDlookup').click(function() {              
    var ID  = $('IDval').attr('value');                  
        var r = "test.cfm?id="+ID;
        $.get(r,function(data){
        $("#Details").html(data);
        });
      });


  $('.name').click(function() {              
       var ID  = $('nameinput').attr('value');                   
        var r = "test.cfm?id="+ID;
        $.get(r,function(data){
        $("#Details").html(data);
        });
      });

     $('#IDval').click(function() {
         $(this).val();
     });

</script>
4

3 回答 3

4

如果错误来自 ID = $(IDval).attr('value'); 然后只需将“var”放在它后面,如

var ID  = $(IDval).attr('value');

它会解决你的问题

于 2012-08-12T12:03:31.110 回答
0

假设您按原样复制并粘贴了上面的代码,则"该行上有一个杂散的双引号 ( )var MyData = Message.cfm"

于 2012-07-05T17:16:51.403 回答
0

尝试这个 :

 <script type="text/javascript">
 //
$.ajaxSetup ({
  // Disable caching of AJAX responses
 cache: false
});

  $(document).ready(function () {
 $('#Message').html('<p><img src="/seccomm/img/ajax-loader-2.gif" width="20"  />');
 var MyData = "Message.cfm";
 $("#Message").load(MyData);  
 });
</script>

编辑:OP编辑了Qn

于 2012-07-05T17:17:02.790 回答