JavaScript Code works inline, but src= reference doesn't -
i have javascript function has been driving me nuts. latest variation on problem. if put code in line after end of form (i.e. after tag, code works fine; if put script reference code, loads doesn't execute.
this works:
<script type="text/javascript"> var matchfieldname = 'dotmatch'; var resultfieldname = 'dotnumber'; var lookupurl = "/autosuggestjstest/autosuggest.asmx/dotfind"; var labelfieldname = "jobtitle"; var valuefieldname = "dotnumber"; $('#' + matchfieldname).autocomplete({ source: function(request, response) { $.ajax({ type: "post", url: lookupurl, contenttype: 'application/json', datatype: "json", data: json.stringify({ prefixtext: request.term, count: 20 }), success: function(data) { var output = jquery.parsejson(data.d); // var output = eval(data.d); response($.map(output, function(item) { var lbl = "item." + labelfieldname + " (item." + valuefieldname + ")"; var val = "item." + valuefieldname; return { // label: lbl, // value: val // label: eval('item.' + lablefieldname + '(item.' + valuefieldname + ')'), // value: eval('item.' + valuefieldname) label: item.jobtitle + "( " + item.dotnumber + ")", value: item.dotnumber } })); }, error: function(xmlhttprequest, textstatus, errorthrown) { alert(textstatus); } }); }, minlength: 2, select: function(event, ui) { $('#' + resultfieldname).val(ui.item.value); return ui.item.label; } }); </script> </div> but doesn't:
</form> <div> <script type="text/javascript" src="js/dotautocomplete.js" /> </div> </body> the contents of .js file lines work.
argh!!!
self-closing <script> tags aren't valid, this:
<script type="text/javascript" src="js/dotautocomplete.js" /> should be:
<script type="text/javascript" src="js/dotautocomplete.js"></script> also note since you're using selector $('#' + matchfieldname), file should either included after element present, or wrap code in document.ready handler, example:
$(function() { //your code... });
Comments
Post a Comment