It appears you have not yet registered with DEVPPL. To register please click here... (it's fast, easy and free!)

Forum

Log In Sponsors
Board index Programming JavaScript Forum

drag and drop help needed

drag and drop help needed

Postby dpsim on Tue Mar 10, 2009 3:00 am

please help...
this is the javascript code:
Code: Select all
<script type="text/javascript" src="javascript/view.js"></script>
<script type="text/javascript" src="javascript/prototype.js"></script>
<script type="text/javascript" src="javascript/effects.js"></script>
<script type="text/javascript" src="javascript/dragdrop.js"></script>
<script type="text/javascript">
        var myStartEffect = function(element) {
         element._opacity = Element.getOpacity(element);
         new Effect.Opacity(element, {duration:0.2, from:element._opacity, to:0.7});
         new Effect.Highlight(element, {});
   }
</script>
<script type="text/javascript">
function addfield(){
  var parent = document.getElementById('myDiv');
  var numEle = document.getElementById('theValue');
  var num = numEle.value = parseInt(numEle.value, 10)+1;
 
  var newdiv = cE('li', {
               id: "my"+num+"Div"
        });
  newdiv.appendChild(
        cE('input', {
               type: "text",
               class: "element text medium",
               name: "firstName"+num,
               value: ""
        }));

  parent.appendChild(newdiv);
  Sortable.create('mainlist', {starteffect: myStartEffect});
}

function cE(ele, attributes){
  var el = document.createElement(arguments[0]);
  if(attributes)
    for( var x in attributes )
      el.setAttribute(x, attributes[x]);
  return el;
}
</script>

this is the html body code:
Code: Select all
<input type="hidden" value="0" id="theValue" />
<a href="javascript:;" onclick="addfield('');">Text</a>
<ul id="mainlist">
    <li id="li_8" >
      <label class="description">Drop Down </label>
      <div>
      <select class="element select medium" id="element_8" name="element_8">
         <option value="" selected="selected"></option>
         <option value="1" >First option</option>
         <option value="2" >Second option</option>
         <option value="3" >Third option</option>

      </select>
      </div>
      </li>
    <li id="li_7" >
      <input type="text" name="firstname">
        </li>
<div id="myDiv"></div>
</ul>
<script type="text/javascript" charset="utf-8">
          Sortable.create('mainlist', {starteffect: myStartEffect});
</script>

li_7 and li_8 have drag and drop ability but when i create a new list item via DOM it hasn't drag and drop ability...can anyone help me????
dpsim
 
Posts: 1
Joined: Tue Mar 10, 2009 2:56 am

Re: drag and drop help needed

Postby rangana on Wed Mar 11, 2009 4:57 am

Could you please provide a link to your page?

That usually happens.

When the page loads, the DOM traverses along the matched elements and tries to append functions as coded in your script.

When you added new elements via DOM, you need to call back the function and bind it to the DOM again.

Hope that makes sense.
User avatar
rangana
500+ Club
 
Posts: 935
Joined: Wed Feb 27, 2008 5:14 am
Location: Cebu City Philippines


Who is online

Users browsing this forum: No registered users and 7 guests