Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

267
Views
I want to create a data extension using client server onclick event, what am I doing wrong?

I want that when the button is clicked, a data extension is created, but my code was in SSJS and I can't use this inside of onclick event, so I found that AJAX could help me, but it still not working

what i've been trying ->

<script>
    function ajax() {
     var xmlHttp;
     if(window.XMLHttpRequest){
       xmlHttp = new XMLHttpRequest;
     } else {
       xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");}
     
       
  xmlHttp.onreadystatechange = function() {
  if(xmlHttp.readyState == 4 && xmlHttp.status == 200)
  alert("status " + xmlHttp.status); alert("status " + xmlHttp.readyState)
  console.log(xmlHttp.responseText)};
  xmlHttp.open('POST','https://...', true);
  xmlHttp.send();
    }
</script> <script>
     
   
function create() {
   var DE = "MyDE"
  var CustomerKey = "CK123"
    try {
        var obj = {
            "CustomerKey" :CustomerKey,
            "Name" : DE,
            "Fields" : [
                { "Name" : "Id", "FieldType" : "Number", "IsPrimaryKey" : true, "IsRequired" : true },
                { "Name" : "MyData", "FieldType" : "Text", "MaxLength" : 50 },
                { "Name" : "Active", "FieldType" : "Boolean", "DefaultValue" : true }
            ]
        };
        DataExtension.Add(obj); 
      } catch (err){
       alert("(!) Data Extension was not created. Error message: " + err + "<br>")}
    }     
  </script> 
  <button onclick="create();ajax()">
    Request 
     </button>
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

first of all, format your code properly, and you will see all you problems :)

your console.log(xmlHttp.responseText) is out of onreadystatechange function

xmlHttp.onreadystatechange = function() { if(xmlHttp.readyState == 4 && xmlHttp.status == 200) alert("status " + xmlHttp.status); alert("status " + xmlHttp.readyState)}

Here is what you have in your handler.

Also, please pay attention that you will have alert("status " + xmlHttp.status) only when: xmlHttp.readyState == 4 && xmlHttp.status == 200

while alert("status " + xmlHttp.readyState) will be triggered all the times.

Conclusion: format your code!

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!