1

未定義の値を取得し続けるimpromptu(jqueryプラグイン)で苦労しています。次に例を示します。

<img id=dispatch title='Click to dispatch(COMING SOON)' onclick=Dispatch(0) src='../images/icons/truck_green.png' width=16 height=16/>
<img id=dispatch title='Click to dispatch(COMING SOON)' onclick=Dispatch(1) src='../images/icons/truck_green.png' width=16 height=16/>
<img id=dispatch title='Click to dispatch(COMING SOON)' onclick=Dispatch(2) src='../images/icons/truck_green.png' width=16 height=16/>
<img id=dispatch title='Click to dispatch(COMING SOON)' onclick=Dispatch(3) src='../images/icons/truck_green.png' width=16 height=16/>

function Dispatch(id){
           var driver = 'Enter the drivers name:<br><input type="text" id="alertName" name=myname value="" />';

           $.prompt(driver,{   
                    submit: myfunc,
                    buttons: { Ok:true }                         
            });
        }  

function myfunc(e,v,m,f){                
            var an = m.children('#alertName');

            if(f.alertName == ""){
                    an.css("border","solid #ff0000 1px");
                    return false;
            }
            return true;
        }

最終的には、入力したIDと名前を取得して、AJAXを実行したいと思います。しかし、CSSを変更することはできません。f.alertNameに警告し、未定義になりましたが、理由がわかりません。お手伝いありがとうございます。

4

1 に答える 1

1

私はあなたが欲しいと信じていますf.myName。デバッガーを使用してステップスルーし、オブジェクトを調べる方法を学びます。答えはすぐに明らかになりました。

http://jsfiddle.net/ULeQz/1/

var driver = 'Enter the drivers name:<br><input type="text" id="alertName" name="myname" value="" />';

$.prompt(driver, {
    submit: myfunc,
    buttons: {
        Ok: true
    }
});

function myfunc(e, v, m, f) {
    debugger;
    var an = m.children('#alertName');

    if (f.myname == "") {
        an.css("border", "solid #ff0000 1px");
        return false;
    }
    return true;
}​
于 2012-08-28T02:02:02.340 に答える